【发布时间】:2018-11-27 07:41:12
【问题描述】:
我在表单中有输入字段和提交按钮。每个输入字段都有onchange事件处理函数,按钮有onclick事件处理函数。
这是供参考的示例虚拟表格。
<style>
div {
margin: 15px;
}
</style>
<script>
function inputchange() {
alert("Input change triggered");
}
function buttonclick() {
alert("Button click triggered");
}
</script>
<div>
<input type="button" value="submit" onclick="buttonclick()" />
</div>
<div>
<input type="text" onchange="inputchange()" id="input1" placeholder="Input 1" />
<input type="text" onchange="inputchange()" id="input2" placeholder="Input 2" />
<input type="text" onchange="inputchange()" id="input3" placeholder="Input 3" />
</div>
https://jsfiddle.net/navinchinnasamy/z3vq2n65/12/
当输入值发生变化时,光标仍然在该输入中并且单击按钮意味着onchange 和onclick 事件都被触发了。
如果在 inputchange() 方法中进行了 ajax 调用,则不会调用 buttonclick() 方法。 Ajax 成功不会影响按钮,只会修改和更新输入字段的值。
【问题讨论】:
-
你能试着更好地解释你的问题吗?或举例说明期望的结果是什么。
-
我想要的结果应该是
onclick事件在我修改输入字段并单击按钮而不从输入中移动焦点时在onchange事件之后触发。当inputchange()中没有 ajax 调用时会发生这种情况,但是如果我将 ajax 调用放入此方法中,则在inputchange()之后不会调用buttonclicked()。我需要通过ajax调用在inputchange()方法上更新服务器中的一些值后调用buttonclicked。
标签: javascript jquery