在Javascript事件“OnChange”完成后提交未运行的操作

时间:2017-12-12 22:15:43

标签: javascript jquery html razor client-side

我的代码中有一个TextBoxFor,如下所示:

@Html.TextBoxFor(m => m.Id, (object)new { Name = "txtID", @Onchange = "onchangeevent();", @onfocusin = "onfocusin();", @Class = "form-control" })

“onchangeevent”Javascript函数如下所示:

 function onchangeevent(){   
    if(!window.confirm("Warning: Once you edit, you cannot undo. Do you still wish to edit?")){
        $('input[name=txtID]').val('0');
    }}

提交按钮:

<input type="submit" name="submitButton" value="Submit" />

我希望这样做:

  1. 用户更改“txtID”值。
  2. 点击“提交”按钮,不点击其他地方就会失去焦点。
  3. 应用程序向用户显示“...您无法撤消...”的确认框。
  4. 如果用户点击“确定”,则应用程序继续提交表单。如果单击“取消”,则中止操作。
  5. 然而,这是实际发生的事情:

    1. 用户更改“txtID”值。
    2. 点击“提交”按钮,不点击其他地方就会失去焦点。
    3. 应用程序向用户显示“...您无法撤消...”的确认框。
    4. 如果用户点击“确定”,则应用程序不会继续提交表单,也不会执行任何操作。
    5. 我的猜测是,通过按下提交按钮,应用程序将“失去焦点”并触发“OnChange”客户端Javascript功能。但是,由于某种原因,提交按钮单击操作会丢失。如果用户点击“确定”,有没有办法继续提交按钮?

0 个答案:

没有答案