控制流程未达到代码行

时间:2014-06-09 07:10:56

标签: javascript jquery asp.net-mvc

我有一个简单的函数来向ASP.NET MVC url提交POST请求。

控件甚至没有到达提交表单的最后一行代码。请帮忙。这是我点击超链接时调用的函数。

function submitNewAccountInfo() {
  debugger;
  var newAccountInfo =
  {
    FullName: $("#NewUserAccountInfo_FullName").val(),
    Email: $("#NewUserAccountInfo_Email").val(),
    PasswordHash: md5($("#NewUserAccountInfo_Password").val())
  };

  debugger;
  // The control does not even come here. What am I doing wrong?
  $("#frmCreateNewAccount").submit(newAccountInfo);
}

<a href="#" onclick = "submitNewAccountInfo();">Create my account</a>

1 个答案:

答案 0 :(得分:0)

我解决了我的问题。我的代码存在一些问题:

我没有使用jQuery绑定/连接事件处理程序与事件。因此,我所采用的捷径onclick附加了事件处理程序,而不是事件侦听器

这意味着我必须处理所有浏览器不兼容性,并且还要抓住event对象以阻止其默认行为,我没有做任何事情以及jQuery所做的所有事情这很容易做到。

我改变了我的代码,使用jQuery绑定/连接事件监听器,我的代码现在正在运行。这是工作代码。

$(document).ready(function () {
    $("#lnkCreateMyAccount").click(submitNewAccountInfo);
});

function submitNewAccountInfo(event) {

    event.preventDefault();

    var newAccountInfo =
        {
            FullName: $("#NewUserAccountInfo_FullName").val(),
            Email: $("#NewUserAccountInfo_Email").val(),
            PasswordHash: $("#NewUserAccountInfo_Password").val()
        };

    $("#frmCreateNewAccount").submit(newAccountInfo);
}