私はjQueryの新機能を使用しています。私は委任に関する問題について少し苦労しています。私のコードで 私はによってロードされた動的なページがあります。jQuery Mobile .delegate()がトリガーされていません
$("#results").delegate('li', 'click', function(evt){
var queryData = "id=" + $(this).attr("id");
if ($(this).attr("id")){
$.ajax({
type: "GET",
url: "wiw_detail_page.html",
data: queryData,
beforeSend: onDetailBeforeSend,
success: onDetailSuccess,
error: onError
});
}
else
{
alert("Please select an Employee from the list");
}
return false;
});
これはonDetailSuccess機能である:私は私の最初のページは「wiw_details_page」に移動し得るよう
function onDetailSuccess(data, status){
$("body").append(data);
$("#wiw_detail_page").page();
$.mobile.changePage("#wiw_detail_page", { transition: 'slide' });
}
すべてが、うまく動作します。私はそのように、折りたたみ式の下で、フィールドのリストを持って新しいページ内 :
<div data-role="collapsible" data-collapsed="false" data-theme="b" id="comData">
<h2>Communication Data</h2>
<div id="communicationData">
<fieldset>
<label for="address">Address:</label>
<a href="#locationMap">
<input class="goMap" type="text"
name="address" id="address"
disabled="true"
value="<%=employeeprofile-building%>"/>
</a>
</fieldset>
</div>
</div>
このページはまだ$(で作成されていないので、私はアドレスの入力フィールド上のクリックハンドラをアタッチする必要があり、ドキュメント).ready()私はこのようにそれにデリゲートを添付:
// Use delegation, since detail view is not availble at document.ready time:
$("#wiw_detail_page").delegate('input.goMap','click', function(evt){
if ($(this).attr("id") == 'address'){
alert("Click!");
if (navigator.geolocation) {
detectBrowser();
navigator.geolocation.getCurrentPosition(function(position){
newInitialize(position.coords.latitude, position.coords.longitude);
})
}else{
detectBrowser();
newInitialize(45.06150, 7.65599);
}
}
});
});
この代表団は行われていないと私は、入力フィールドの何をクリックしたときにエラーの(いなくても、あらゆる種類の)が起こるん。
私も、セレクタを変更して試してみました:
$("#comData").delegate('input.goMap','click', function(evt)
と絶望的な試みとして、私はそれを変更:
$("body").delegate('input.goMap','click', function(evt)
任意の手掛かりを?
事前にこのような長い質問や感謝、 R.
あなたはjQueryとjQueryMobileのどのバージョンを使用していますか? –
jquery-1.7.1.min.jsとjquery.mobile-1.0.min.js – RobyPag
jQMはjQueryバージョン1.6.4のみをサポートしていますが、私はダウングレードし、さらにここに投稿してください:http://jquerymobile.com/blog/2011/11/16/announce-jquery-mobile-1-0/ –