【问题标题】:Jquery mobile- Multipage template validation using jquery validate.jsJquery mobile- 使用 jquery validate.js 进行多页模板验证
【发布时间】:2012-05-24 06:52:17
【问题描述】:

点击下一个按钮,验证当前页面,点击提交,验证所有页面使用

var validator = $("#frmAddstore").data('validator');

validator.settings.ignore = "";

现在我发现将焦点设置到隐藏页面的问题。错误所在的页面如何导航?

我可以得到错误元素,如果它在当前页面中,那么我可以通过$(this).find(":input.error:first").focus() 设置焦点。如果它的隐藏页面无法设置焦点以及我不知道要更改页面的 pageid 或划分。

但是我可以使用$(this).find(":input.error:first").attr("id") 获取元素的id 有没有办法从元素id 中获取div id?

我创建了一个 jsfiddle 来显示问题。 jsfiddle.net/U4RPf/14

【问题讨论】:

    标签: jquery-mobile jquery-validate


    【解决方案1】:

    获取错误页面

    var idErrorPage = $(this).find(":input.error:first").parents("div:jqmData(role='page')").attr("id")
    

    切换到那个页面

    $.mobile.changePage( "#" + idErrorPage );
    

    我创建了一个 jsbin,它不使用 validate.js,但它应该向您展示您需要了解的内容http://jsbin.com/awaluw/edit#html

    完整的工作示例:http://jsfiddle.net/U4RPf/15

    【讨论】:

    • 我可以得到错误元素。如果它在当前页面中,那么我可以通过
      $(this).find(":input.error:first").focus() 设置焦点。如果它的隐藏页面无法设置焦点以及我不知道要更改页面的 pageid 或划分。
    • 但是我可以使用$(this).find(":input.error:first").attr("id") 获取元素的ID。我们可以从元素id中获取div id吗?
    • 你能创建一个你当前情况的 jsfiddle 或 jsbin 吗?
    • 我再次更新了我的答案,并为您创建了一个带有工作示例的 jsbin。
    • 这个工作 jsfiddle.net/U4RPf/15 我想你刚刚错过了我的最后一次更新。
    猜你喜欢
    • 1970-01-01
    • 2014-07-17
    • 2015-01-19
    • 1970-01-01
    • 2011-06-30
    • 1970-01-01
    • 2014-05-11
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多