2016-08-23 62 views
0

我想修改一个HTML字符串(比如向其子中的一个添加类)。在我的代码中,我必须使用一个container作为中途输出$html作为一个字符串。 jQuery是否提供了这样的功能?从一组jQuery对象中生成HTML?

html = "<p>title</p><div><ul class='www'></ul>something</div>"; 
    $html = $(html); 
    $html.filter('div').find('ul').addClass('xxx'); 
    container = $('<div></div>'); 
    html = container.html($html)[0].innerHTML; //output "<p>title</p><div><ul class='www xxx'></ul>something</div>" 
+0

我不明白,你想写'$ html'(在添加类后)作为一个字符串,而不是创建DOM元素? – martriay

+0

是的,我想它作为一个字符串,并没有实际的DOM在这里。 – shenkwen

+0

@guradio我问我是否可以做到这一点,而不引入'容器' – shenkwen

回答

0

没有。

与DOM交互(这是创建或选择一个现有的元素)没有逃脱,最好的尝试是document.write你的字符串,但你需要scape the HTML,所以它不会被解释为HTML但文字。请注意,document.write仅在文档加载完成之前有效。

我不知道你的需求,但我想不出一个很好的用例,你的jQuery应该在大多数情况下更好。