通过 Javascript 访问 SQLite 数据?
Accessing SQLite data through Javascript?
例如,如果我有这个代码:
<form action="{{ url_for('user.new_domain') }}" class="form" role="form" method="post" action="" autocomplete="off">
{{ form.csrf_token }}
<p>{{ form.name(placeholder="name", onkeyup="timing()") }}
<span class="error">
{% if form.name.errors %}
{% for error in form.name.errors %}
{{ error }}
{% endfor %}
{% endif %}
</span>
</p>
</form>
timing()
是 javascript 文件中的一个函数,我在代码中的 <script>
标记中包含该文件。我希望 timing()
能够访问我的 sqlite 数据库信息并检查我的数据库中是否存在用户输入表单的任何内容。这甚至是正确的方法吗?通过javascript?我还应该如何 运行 javascript 依赖于 sqlite 数据的函数?任何帮助表示赞赏。谢谢!
简短的回答是可以,但在有限的浏览器上,请参阅 link 了解详细信息。 http://html5doctor.com/introducing-web-sql-databases/
长的答案是使用你的后端来访问这些可能是明智的(也许通过 API?)这是 Flask 的一个这样的例子(虽然我不确定你正在使用什么 https://flask-restless.readthedocs.org/en/latest/)
在您的应用中使用 Ajax to send a call to another route returns 字符串(普通字符串或 JSON,以更有用者为准)。 Ajax 调用然后使用它的 success
函数来解析该数据并根据需要对其进行操作。
因此,除了仅由 Flask 呈现的代码之外:
{% if form.name.errors %}
{% for error in form.name.errors %}
{{ error }}
{% endfor %}
{% endif %}
你需要通过 JavaScript:
<script>
function timing() {
$.ajax({
method: "POST",
url: "some url",
data: {
key: "value"
},
success: function(data) {
// do something
}
});
}
</script>
您应用中的代码类似于(基于您的结果来自另一个实际执行查询的 Python 文件这一事实):
from that_other_file import the_querying_function
@app.route('/some_url', methods=['POST'])
def some_url():
return the_querying_function(request.POST['key'])
这使用 HttpResponse.POST。将 key
(在 JS 和 Python 中)替换为您要从表单中获取的内容。
例如,如果我有这个代码:
<form action="{{ url_for('user.new_domain') }}" class="form" role="form" method="post" action="" autocomplete="off">
{{ form.csrf_token }}
<p>{{ form.name(placeholder="name", onkeyup="timing()") }}
<span class="error">
{% if form.name.errors %}
{% for error in form.name.errors %}
{{ error }}
{% endfor %}
{% endif %}
</span>
</p>
</form>
timing()
是 javascript 文件中的一个函数,我在代码中的 <script>
标记中包含该文件。我希望 timing()
能够访问我的 sqlite 数据库信息并检查我的数据库中是否存在用户输入表单的任何内容。这甚至是正确的方法吗?通过javascript?我还应该如何 运行 javascript 依赖于 sqlite 数据的函数?任何帮助表示赞赏。谢谢!
简短的回答是可以,但在有限的浏览器上,请参阅 link 了解详细信息。 http://html5doctor.com/introducing-web-sql-databases/
长的答案是使用你的后端来访问这些可能是明智的(也许通过 API?)这是 Flask 的一个这样的例子(虽然我不确定你正在使用什么 https://flask-restless.readthedocs.org/en/latest/)
在您的应用中使用 Ajax to send a call to another route returns 字符串(普通字符串或 JSON,以更有用者为准)。 Ajax 调用然后使用它的 success
函数来解析该数据并根据需要对其进行操作。
因此,除了仅由 Flask 呈现的代码之外:
{% if form.name.errors %}
{% for error in form.name.errors %}
{{ error }}
{% endfor %}
{% endif %}
你需要通过 JavaScript:
<script>
function timing() {
$.ajax({
method: "POST",
url: "some url",
data: {
key: "value"
},
success: function(data) {
// do something
}
});
}
</script>
您应用中的代码类似于(基于您的结果来自另一个实际执行查询的 Python 文件这一事实):
from that_other_file import the_querying_function
@app.route('/some_url', methods=['POST'])
def some_url():
return the_querying_function(request.POST['key'])
这使用 HttpResponse.POST。将 key
(在 JS 和 Python 中)替换为您要从表单中获取的内容。