【问题标题】:jquery mobile css not applying on ajax (getJson) returned resultjquery mobile css不适用于ajax(getJson)返回结果
【发布时间】:2012-03-06 02:30:09
【问题描述】:

我使用$.getJSON 从服务器端获取数据以填充我的 jquery 移动应用程序中的数据。我遇到的问题是我获取的 json 结果包含 HTML 标签。当我将此数据附加到应用程序中的 div 时,HTML 标记被保留,因为它们现在看起来像这样

var menDet;
menDet="<ul><li>Offer
<ul>"+data+"</ul></li><ul>";

//data contains a <p> tag from the server side fetched data

$("#menu").html($(menDet));
$("#menu").listview("refresh");

在 Inspect element 窗口中,我刚刚注意到数据值被包含在引号中,这会阻止 HTML 应用于引号中的 HTML 标记!

关于如何添加它们而不用引号括起来的任何想法?

【问题讨论】:

    标签: jquery json mobile jquery-mobile partial-page-refresh


    【解决方案1】:

    您可以将字符串包装在$() 中,并获取一个构造所有 HTML 元素的 jQuery 对象。

    示例

    你可以用 jsFiddle 测试它here

    HTML

    <html>
        <div id="foo">
        </div>
    </html>​
    

    Javascript

    var s = '<span><b>Hello</b> World</span>';
    $('#foo').append($(s));
    

    结果

    <html>
        <div id="foo">
            <span>
                <b>Hello</b> World
            </span>
        </div>
    </html>
    

    【讨论】:

      【解决方案2】:

      如果您以正确的格式完美地从服务器获取数据,那么您可以使用

      $("#yourlistview").listview('refresh'); or 
      
      $("#yourlistview").listview('refresh', true);
      

      查看以下链接

      JQM (jQueryMobile) problem with AJAX content listview('refresh') not working

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2015-10-31
        • 2023-03-03
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2018-01-09
        • 1970-01-01
        • 2012-02-14
        相关资源
        最近更新 更多