有没有办法通过jquery mobile core为加载的数据创建自定义处理程序。例如,如果在我的表单submition jquery mobile之后得到这个:
<div data-role="message">
<message>Error</message>
<selector>#password, #login</selector>
</div>
Jquery mobile不必将空白页面呈现为内容,而只需执行以下内容:
//grab
var message = $(response).find('message').text();
var selector = $(response).find('selector').text();
//show and highlight
$.mobile.showPageLoadingMsg($.mobile.pageLoadErrorMessageTheme, message, true);
setTimeout($.mobile.hidePageLoadingMsg, 1500);
if (selector) $(selector).addClass('error');
答案 0 :(得分:1)
这是我令人毛骨悚然的解决方案
(function($){
$(document).on('pageload', function(event, data) {
var $this = $(data.xhr.responseText);
if ($this.attr('data-role')=='message') {
//grab
var message = $this.find('message').text();
var selector = $this.find('selector').text();
//show and highlight
$.mobile.showPageLoadingMsg($.mobile.pageLoadErrorMessageTheme, message, true);
setTimeout($.mobile.hidePageLoadingMsg, 1500);
if (selector) $(selector).addClass('error');
//stop defaults
data.deferred.reject(data.absUrl, data.options);
}
});
})(jQuery);