jQuery验证错误消息未在jQuery Mobile Pages中显示

时间:2011-12-09 14:28:05

标签: jquery asp.net-mvc-3 jquery-mobile jquery-validate

我在ASP.NET MVC3中使用jQuery UnObtrusive Validation: 这些是添加的脚本: -

  <link rel="stylesheet" href="http://code.jquery.com/mobile/latest/jquery.mobile.min.css" />
    <script src="http://code.jquery.com/jquery-1.6.1.min.js"></script>
    <script type="text/javascript">
        $('div').live('pageshow', function (event) {
            jQuery.validator.unobtrusive.parse(".ui-page-active form");
        });
    </script>
    <script src="http://code.jquery.com/mobile/latest/jquery.mobile.min.js" type="text/javascript"></script>

    <script src="@Url.Content("~/Scripts/jquery.validate.min.js")" type="text/javascript"></script>
    <script src="@Url.Content("~/Scripts/jquery.validate.unobtrusive.min.js")" type="text/javascript"></script>

我已经对其中一个字段进行了min-max范围检查,并且正确生成了html:

 <div class="display-label">
            <label for="QtyToIssue">Qty to Issue</label>
        </div>
        <div class="display-field">
            <input class="text-box single-line" data-val="true" data-val-number="The field Qty to Issue must be a number." data-val-range="The field Qty to Issue must be between 0 and 1.79769313486232E+308." data-val-range-max="1.79769313486232E+308" data-val-range-min="0" data-val-required="The Qty to Issue field is required." id="QtyToIssue" name="QtyToIssue" type="number" value="0" />
        </div>

在页面加载时,我正在通过jQuery更改data-val-range-max属性值:

 <script type="text/javascript">
      $(function () {
      $('#QtyToIssue').attr('data-val-range-max', 11.000000);
      });
    </script>

完美地进行验证,在提交时,如果QtyToIssue大于11,文本框变为红色,焦点设置为此。 唯一的问题是我没有收到错误消息。

可能是什么原因?

1 个答案:

答案 0 :(得分:2)

尝试将@Html.ValidationSummary()添加到您的视图中(假设您使用的是剃须刀)。这将生成一个应该显示验证消息的div。

相关问题