JavaScript的 - 形式的OnSubmit工作,但动作不
-
13-09-2019 - |
题
在我FORM
,出于某种原因,我可以通过我的onsubmit
形式的输入变量,但没有使用action
。
此工作的:
<form onsubmit="javascript:myFunc(this.city.value);">
<p><input type="text" id="city-field" name="city" onfocus="this.select();" /> <input type="submit" value="Find" /></p>
</form>
此不起作用(this.city.value
被发现为空)
<form action="javascript:myFunc(this.city.value);">
<p><input type="text" id="city-field" name="city" onfocus="this.select();" /> <input type="submit" value="Find" /></p>
</form>
为什么说onsubmit
可以得到this.city.value
但action
事件不能?
解决方案
在表单动作标签不引用与任何this
相反,使用绝对位置
action="javascript:myFnc(document.getElementById('city-field').value)"
其他提示
修改:多亏了克里斯托夫的评论,下面,我意识到我的巨大的监督。下面是实现他的建议的最终溶液。
<form action="" onsubmit="myFunc(this.city.value); return false;">
<p><input type="text" id="city-field" name="city" onfocus="this.select();" /> <input type="submit" value="Find" /></p>
</form>
这应该做你所需要的。我不给你在我以前的答复我的全部注意力道歉。
HTML形式用于提交数据返回给脚本服务器进行数据处理上。当提交表单时,表单字段中的数据会传递到名称 - 值对的形式传递到服务器。服务器端的脚本,它可以在几种不同的语言来编写,用于处理输入数据和新的HTML页面返回给浏览器。返回到浏览器的页面可能是从“感谢您注册”消息任何东西,或从数据库查询生成的搜索结果列表。
,因为表单是用于将数据发送到服务器上的另一个文件。在行动,我们只能指定我们需要发送的数据的路径。所以你不能得到的形式具有的值。
不隶属于 StackOverflow