jquery - 在两个.filter()之后发出获取脚本标签的问题

时间:2015-07-08 21:44:57

标签: javascript jquery ajax filter tags

我有一个想要解析标签的ajax响应,我只想在特定的div id中找到脚本标签。下面将捕获并运行页面中的每个javascript:

success: function(data) {
    var dom = $(data);
    dom.filter('script').each(function(){
        var obj = $(this);                                          
        $('#my_div').append(obj);
    });
},

当我尝试首先按div id过滤,然后按脚本过滤它不会附加任何内容。我明显可以访问reponse html,我可以看到' js_outer_div'中有多个标签。 DIV:

var dom = $(data);
dom.filter('js_outer_div').filter('script').each(function(){
    var obj = $(this);                                          
    $('#my_div').append(obj);
});

不幸的是我无法控制响应html。有没有办法首先按div过滤,然后按照我想要的脚本过滤?

编辑:示例HTML回复:

... 
<div id="i9-content-div">
<script xmlns:efactions="http://www.enginframe.com/2009/efactions" xmlns:grid="http://www.enginframe.com/2000/GRID" type="text/javascript">
...
</script>
<script type="text/javascript">
...
</script>
</div>

2 个答案:

答案 0 :(得分:1)

  

我可以看到&#39; js_outer_div&#39;中应该有多个标签。格

如果js_outer_div是类名,则filter方法应为:

dom.filter('.js_outer_div')...

但不,它没有解决问题。 filter方法过滤集合中的顶级元素。 jQuery集合不是平面的,它保留了元素层次结构。您应该使用find方法。当find方法选择集合中包装元素的后代时,您可以生成div元素并使用html方法使用{{1}设置其内容变量。现在data方法无论目标find是否是顶级元素,都可以使用。

div.js_outer_div

答案 1 :(得分:0)

您可以使用#add www. if missing WORKS RewriteEngine on RewriteCond %{HTTP_HOST} ^[^.]+\.[^.]+$ RewriteRule ^(.*)$ https://www.%{HTTP_HOST}/$1 [L,R=301] #force SSL/https WORKS RewriteCond %{HTTPS} !=on RewriteCond %{REQUEST_URI} !^/webshop2/localize\.php RewriteCond %{REQUEST_URI} !^/webshop2/layoutstripper\.php RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301] #force http DOES NOT WORK RewriteCond %{HTTPS} on RewriteCond %{REQUEST_URI} ^/webshop2/localize\.php [NC] RewriteCond %{REQUEST_URI} ^/webshop2/layoutstripper\.php [NC] RewriteRule ^(.*)$ http://%{HTTP_HOST}%{REQUEST_URI} [L,R=301] 代替find

filter

现在这实际上不会选择任何东西,除非你在某个地方有var dom = $(data); dom.find('js_outer_div script').each(function(){ var obj = $(this); $('#my_div').append(obj); }); 标签。大概你需要在find语句中将<js_outer_div>更改为js_outer_div.js_outer_div