ダイアログ ページに JQuery Mobile スライダーを実装しようとしています。
ボタンをクリックすると、ダイアログが作成されます。このボタンのコールバックでは、サーバーから JSON データを取得し、そのデータをダイアログに入力します。コード スニペットは次のとおりです。
$('.class-CheckOutList').live ("click", function (event)
{
$.post("getItemDataForDataEntry.php", {"name":selectedItemID},
function(data){
$.each(data, function(index,value){
dialogHTML = '<input type="range" name="slider"';
dialogHTML +=' id="slider-0" value="0" min="0" max="100">';
$("#itemDataEntryFormContent").html(dialogHTML);
});
}
,"json");
});
問題は、上記のコードではスライダーが正しくレンダリングされないことです。申し訳ありませんが、私はこのフォーラムに不慣れなため、写真を投稿して何が得られるかを示すことはできません.
ただし、次のコードは問題なく動作するようです。
$('.class-CheckOutList').live ("click", function (event)
{
dialogHTML = '<input type="range" name="slider"';
dialogHTML +=' id="slider-0" value="0" min="0" max="100">';
$("#itemDataEntryFormContent").html(dialogHTML);
});
誰でも助けることができますか?
ありがとう。
++++++++++++++++++++
更新 --> 問題を解決できましたが、解決策を適用した後に別の同様の問題が発生します。
私がやったこと --> 以前は、コールバックを有効にするために、次のようなものを使用していました。
<a href='#itemDataEntryDialog' data-rel='dialog' data-role='button'>Change</a>";
ダイアログを作成します。
私が行った解決策は、上記を次のように変更することでした。
<a data-role='button'>Change</a>";
コードを次のように変更します。
$('.class-CheckOutList').live ("click", function (event)
{
$.post("getItemDataForDataEntry.php", {"name":selectedItemID},
function(data){
$.each(data, function(index,value){
dialogHTML = '<input type="range" name="slider"';
dialogHTML +=' id="slider-0" value="0" min="0" max="100">';
});
$("#itemDataEntryFormContent").html(dialogHTML);
$.mobile.changePage($('#itemDataEntryDialog'), {role: "dialog"} );
}
,"json");
});
これらすべての変更により、ダイアログが適切にレンダリングされます。
ただし、ボタンをもう一度クリックすると、ダイアログのレンダリングが再び失敗します (以前と同様)。
だから、私は一種の振り出しに戻っています.......
ここで助けを得ることができれば幸いです。それは私を夢中にさせています。