如何将按钮的点击事件绑定到 PartialView (MVC)?

How to bind click event of button into PartialView (MVC)?

我在 asp.net MVC 中制作了一个页面。在这个页面中存在一个视图和一个 PartialView.I 将按钮放入局部视图并将 Countinue 函数写入视图.

按钮:

    <button type="button" class="btn btn-warning center-block btn-large" id="Continue" onclick="Continue(this);">Continue</button>

js:

 var Continue=function (e) {
            e.preventDefault();
            if ($('#FieldsetCharterFlightsReturn article').size() < 1) {
                if (validateDeparturef(e)) {
                    $("#CharterFlightsForm").submit();
                }

            }
                        if ($('#FieldsetCharterFlightsReturn article').size() > 0) {
                if (validateDeparturef(e) && validateArrivalf(e)) {
                    $("#CharterFlightsForm").submit();
                }
            }
        };

现在当我点击按钮时出现这个错误:

TypeError: Continue is not a function

将元素的事件绑定到 PartialView 的正确方法是什么?

因为您正在使用 绑定事件而不是丑陋的内联点击处理程序。

 $(function(){
    $('#Continue').on('click', Continue);
 })

或者,使用事件委托

 $(document).on('click', '#Continue', Continue);

并删除内联 onclick="Continue(event);" 处理程序

使用以下模式:

<button type="button" class="btn btn-warning center-block btn-large" id="Continue" onclick="module.Continue(event);">Continue</button>

(function($, module) {

    module.Continue=function (e) {
        e.preventDefault();
        if ($('#FieldsetCharterFlightsReturn article').size() < 1) {
            if (validateDeparturef(e)) {
                $("#CharterFlightsForm").submit();
            }

        }
        if ($('#FieldsetCharterFlightsReturn article').size() > 0) {
            if (validateDeparturef(e) && validateArrivalf(e)) {
                $("#CharterFlightsForm").submit();
            }
        }
    };

}(jQuery, module= window.module|| {}));