【问题标题】:Turning returned data into a jquery object将返回的数据转换为 jquery 对象
【发布时间】:2017-01-31 01:58:11
【问题描述】:

我对 jquery 中的 get 请求有一个承诺,它返回 data 然后通过 append 将其添加到页面:

$.get('/get/something').done(function(data) {
    $('#main').append(data);
})

data 看起来像:

<div class="container">
    ...
    ...
</div>

如何将返回的数据/附加元素包装在 jquery 选择器中,然后对其执行操作?

我试过了:

$(data).some-jquery-fnc();

但没有运气。

【问题讨论】:

    标签: javascript jquery html


    【解决方案1】:

    您可以将类选择器与 :last 选择器一起使用:

    $('#main .container:last').some-jquery-fnc();
    

    这将始终选择通过.append() 方法添加到#main 的最后一个.container

    $('#main').append(data);
    

    希望这会有所帮助。

    【讨论】:

      【解决方案2】:

      如果您只附加一个元素并希望将您的操作与事件绑定,这可能会很有用。

      $(document).on("click",".container",function() { // or on mouseover or any other event you want
      // rest of your code to be executed for this particular event.
      });
      

      【讨论】:

      • 你假设他有能力改变外部脚本返回的内容。
      • @Blazemonger 现在怎么样?
      • 你还在改变data,却不知道他能这样做。
      • @Blazemonger 如果你的意思是id="myID" 部分,那么我会改变我的答案
      • @Blazemonger 现在可以了吗?
      【解决方案3】:

      您可以使用: $.parseHTML(数据) 或者 $('').html(数据).contents(); 详情请参考:Creating a jQuery object from a big HTML-string

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2022-12-05
        • 1970-01-01
        • 2020-07-20
        • 2012-10-25
        • 2013-01-06
        • 2018-09-25
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多