我正在使用jQuery Mobile來創建一個網站,在索引頁中我在這裏放置了一個表單進行搜索。我迷上了Ajax post的提交事件。當ajax成功獲取放置在目標容器中的資源 (html,<ul>...</ul>
)後,觸發創建事件以增強視圖。這項工作第一次很好。當我點擊回到索引頁並再次搜索時,我得到了一個未加強的原始列表視圖,誰能告訴我爲什麼? ps:我已經嘗試了很多方法,但是問題越來越多,官方文件太差了。jquery移動觸發器'創建'不工作,除了第一次
$(document).bind('pageinit',function(){
$("#search").submit(function(){
var searchdata = $("#search").serialize();
$.ajax({
'type':"POST",
'url':"/server/jnulib.php?action=search",
'data':searchdata,
'success':function(data){
$("#searchresultfield > ul").remove();
$("#searchresultfield").html(data).find('ul').trigger('create');
try{
$("#searchresultfield > ul").listview('refresh');
}catch(e){
}
$.mobile.changePage("#searchresult");
//$("div[data-role='header'] > a").
}
});
return false;
});
});
編輯:測試網址:http://ijnu.sinaapp.com 另一個問題:第二AJAX請求失敗和瀏覽器導航到Ajax目標筆直。
您的網站是一個單獨的HTML文件嗎?如果不是那麼每次新頁面被初始化時,你的事件處理程序都會運行,重新綁定'$('#search')。submit(...'每次都是事件處理程序,並且鏈接到我們可以看到的版本很有幫助。 – Jasper