0

我有以下表格:

@using (Html.BeginForm(new { ReturnUrl = ViewBag.ReturnUrl, @class = "form-vertical login-form", id = "loginform" }))

                    <button type="submit" class="btn green pull-right">
                        Login <i class="m-icon-swapright m-icon-white"></i>
                    </button>

}

这是处理事件函数的javascript

$(document).ready(function () {

            $("#loginform").submit(function () {
                alert('Handler for .submit() called.');
                return false;
            });
}

然而,这根本不起作用。

永远不会触发警报

4

1 回答 1

3

这很正常,你从来没有为你的表单分配一个id或一个class。查看浏览器中生成的 HTML 以了解我的意思。

您正在使用完全错误的BeginForm帮助程序重载。

试试这个:

@using (Html.BeginForm(null, null, new { returnUrl = ViewBag.ReturnUrl }, FormMethod.Post, new { @class = "form-vertical login-form", id = "loginform" }))
{
    <button type="submit" class="btn green pull-right">
        Login <i class="m-icon-swapright m-icon-white"></i>
    </button>
}

现在请阅读BeginFormMSDN 上的不同重载并yoursmine.

如您所见,routeValues参数和htmlAttributes参数之间存在差异。

于 2013-03-24T14:03:56.040 回答