函数预期的JavaScript错误

时间:2016-07-05 13:50:44

标签: javascript jquery asp.net-mvc-5

使用MVC ..当用户点击“创建”按钮并且特定字段为空或空格时,则显示对话框进行确认。如果字段有值,请不要显示对话框并直接进入HttpPost控制器方法..

这是我到目前为止所做的:

CSHTML:

<div class="form-group">
    @Html.LabelFor(model => model.ATime, "ATime:", htmlAttributes: new { @class = "control-label col-md-2" })
    <div class="col-md-10">
        @Html.EditorFor(model => model.ATime, new { htmlAttributes = new { id = "AValue", @class = "form-control a-textbox", @placeholder = "xxxx.x" } })
        @Html.ValidationMessageFor(model => model.ATime, "", new { @class = "text-danger" })
    </div>
</div>

<div id="dialog" title="Basic dialog">
    <p>This is the default dialog which is useful for displaying information. The dialog window can be moved, resized and closed with the 'x' icon.
    </p>
</div>

<input type="submit" value="Create" class="btn btn-primary btnSubmitDS" />

JavaScript的:

$(document).ready(function () {
    $(".btnSubmitDS").on("click", function (e) {
        var aValue = $("#AValue").val();

        alert(aValue);

        if (aValue == null || aValue.length() == 0) {
            $(function () {
                $('#dialog').dialog();
            });
        }
    });
});

CSS:

#dialog{
    display:none;
}

现在,当单击按钮时,正在向用户发出正确的值,但在JS的if语句中抛出错误说:

  

预期的功能

我试图在JSFiddle中重新创建它,并且正在警告正确的值,但对话框也没有出现在那里,我确实包含了jQuery库。

感谢任何帮助。

2 个答案:

答案 0 :(得分:2)

使用aValue.length代替aValue.length()

 $('#SubmitBTN').on("click", function (e) {
    var value = $('#TextBox').val();
    if(value == null || value.length == 0){
        $(function() {
            $('#dialog').dialog();
        });
    }
  });

答案 1 :(得分:1)

使用aValue.length而不是aValue.length()。 并在jquery文件后添加jquery UI。 &#39;&#39;