0

私が追加した場合でも、Ajaxを呼び出した後、ページはJQMobileCSSを失いました。

$("#idlist").listview("refresh");

私のコードでは:

$(document).ready(function() {
var display= $("#displaydata");
    function displaydata()
{
    $.ajax({
        crossDomain:true,
        type:"GET",
        data:"lihat==suku",
        url:"server.php",
        success: function(data){        
        display.html(data);

        }
    });
}

displaydata(); });

PHPからデータを呼び出しました。これが私のPHPコードです。

    if(isset($_GET["lihat"])=="suku")
{
    $tampil = mysql_query("select * from deskripsi");
    echo"<ul id='ul' data-role='listview' data-inset='true' data-filter='true' data-filter-placeholder='Cari Suku Besar...'>";
    while($r = mysql_fetch_array($tampil))
    {
        echo"<li>$r[suku]</li>";    
    }
    echo"</ul>";
}
4

2 に答える 2

3

ここに提案があります:

PHPコードで、HTML文字列を作成し、最後に文字列値をエコーし​​ます。

このような:

if(isset($_GET["lihat"])=="suku") {
    $tampil = mysql_query("select * from deskripsi");
    $string = "<ul id='ul' data-role='listview' data-inset='true' data-filter='true' data-filter-placeholder='Cari Suku Besar...'>";
    while($r = mysql_fetch_array($tampil)) {
        $string .= "<li>$r[suku]</li>";    
    }
    $string .= "</ul>";
    echo $string;
}

そして、応答データを追加した後、ajax成功関数に以下のコードを追加します。

$("#idlist").listview().trigger("create");

楽しみ...

于 2013-03-27T05:54:41.367 に答える
1

を押しf12て、エラーメッセージが表示されているかどうかを確認します。応答が正しく受信されましたか?

以下のように機能を成功させる必要があります。html()div内のすべてのコンテンツを置き換えるだけなので、<ul></ul>タグを再度追加する必要があります。

    success: function(data){ 
        var tempString = "<ul data-role='listview'>";
        tempString += data;
        tempString += "</ul>";
        display.html(tempString);
    }

以下のようにリストビューを更新してみてください

$("#idlist").listview();

$("#idlist").listview("refresh");スクラッチから作成したリストビューではなく、既存のリストビューで機能するようです。

于 2013-03-27T05:48:40.017 に答える