4

单击下一个按钮时,对当前页面进行验证,单击提交时,对所有使用的页面进行验证

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

validator.settings.ignore = "";

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

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

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

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

4

1 回答 1

3

获取错误页面

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

于 2012-05-24T16:01:07.730 回答