在 django 模板中获取用户输入的变量而不使用表单
我有一个 django 模板,其中还有一个接受 user_inputed 值的 div 元素。 输入值时,我调用一个 javascript 函数 onSubmit(user_input)
<input type="text" class= "inputtext" onKeyPress="return onSubmit(this.value)">
现在,在这个 onSubmit() 函数中,该函数现在具有用户输入的值 user_input,我希望能够使用 url 模式直接访问视图,例如
function onSubmit(user_input) {window.location = "{% url myview user_input %}";}
这里的问题是,由于加载模板时 user_input 为空,因此 url-view 反向查找会出错。有没有办法仅在调用 onSubmit 函数时触发此查找。
我知道形式是一种选择,但感觉对于这种情况来说它有点过分了。
I have a django template which also has a div element that takes in a user_inputed value.
When the value is entered, I call a javascript function say onSubmit(user_input)
<input type="text" class= "inputtext" onKeyPress="return onSubmit(this.value)">
Now in this onSubmit() function which now has the user-inputted value user_input, I want to be able to use url patterns to a direct to a view, like
function onSubmit(user_input) {window.location = "{% url myview user_input %}";}
The problem here is that since user_input is empty when the template is loaded, the url-view reverse lookup gives an error. Is there a way to trigger this lookup only when the onSubmit function is called.
I know form is an alternative, but it just feels like it'll be an overkill for this situation.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
你可以通过 AJAX 获取 URL:
views.py:
urls.py
js:
或者,如果你的 URL 规则足够简单,你可以在解析 URL 时使用一些占位符,并且在提交表单之前你应该将其替换为真实的输入:
You can get the URL via AJAX:
views.py:
urls.py
js:
Alternatively, if your URL rule is simple enough, you can use some placeholder when resolving and URL, and before submitting the form you should replace it with real input: