Javascript jQuery语法未设置对象属性
我相信我的jQuery问题非常简单,这让我发疯,因为我无法理解它 我有一个具有属性内容的对象,我希望能够获取该对象,使用jQuery操作属性内容,然后使用jQuery创建的新值覆盖该值 例如:Javascript jQuery语法未设置对象属性,javascript,jquery,Javascript,Jquery,我相信我的jQuery问题非常简单,这让我发疯,因为我无法理解它 我有一个具有属性内容的对象,我希望能够获取该对象,使用jQuery操作属性内容,然后使用jQuery创建的新值覆盖该值 例如: o.content = "<div><span>hello</span></div>"; $('div', o.content).addClass('test'); 此时,我希望o.content等于hello 我一辈子都搞不懂语法。非常感谢您的帮助。在o
o.content = "<div><span>hello</span></div>";
$('div', o.content).addClass('test');
此时,我希望o.content等于hello
我一辈子都搞不懂语法。非常感谢您的帮助。在o.content中解析html,添加类,将解析后的html附加到新的中,并获取新div的html:
o.content = "<div><span>hello</span></div>";
var el = $(o.content).addClass('test');
o.content = $("<div>").append(el).html();
在o.content中解析html,添加类,将解析后的html附加到新的,并获取新div的html:
o.content = "<div><span>hello</span></div>";
var el = $(o.content).addClass('test');
o.content = $("<div>").append(el).html();
我认为你不能从这样的字符串中查找元素。。我宁愿像下面这样做
var content = "<span>hello</span>";
content = $('<div/>', {class: 'test'}).html(content)
演示:我认为您无法从这样的字符串中查找元素。。我宁愿像下面这样做
var content = "<span>hello</span>";
content = $('<div/>', {class: 'test'}).html(content)
演示:如果这是您想要的,这将给您一个字符串hello:
$(o.content).addClass('test').wrap('<div>').parent().html();
如果这是您想要的,这将为您提供一个字符串hello:
$(o.content).addClass('test').wrap('<div>').parent().html();
从上下文来看,上下文必须是
用作上下文的DOM元素、文档或jQuery
您的上下文o.content是一个字符串。此外,jQuery函数不能选择整个上下文,它只能选择该上下文中的元素
请尝试以下方法:
// make o.content a jquery element, not a string
o.content = $("<div><span>hello</span></div>");
// select on something inside the context (inside the div), not the div itself
$('span', o.content).addClass('test');
从上下文来看,上下文必须是
用作上下文的DOM元素、文档或jQuery
您的上下文o.content是一个字符串。此外,jQuery函数不能选择整个上下文,它只能选择该上下文中的元素
请尝试以下方法:
// make o.content a jquery element, not a string
o.content = $("<div><span>hello</span></div>");
// select on something inside the context (inside the div), not the div itself
$('span', o.content).addClass('test');
您想要以下内容
o.content = "<div><span>hello</span></div>";
// Create a jQuery object you can call addClass on
var docFragment = $(o.content);
docFragment.addClass('test');
// Since there's no outerHTML in jQuery, append it to another node
var wrapper = $('div');
docFragment.appendTo(wrapper);
// The HTML of the wrapper is the outerHTML of docFragment
console.log(wrapper.html()); // outputs <div class='test'><span>hello</span></div>
您想要以下内容
o.content = "<div><span>hello</span></div>";
// Create a jQuery object you can call addClass on
var docFragment = $(o.content);
docFragment.addClass('test');
// Since there's no outerHTML in jQuery, append it to another node
var wrapper = $('div');
docFragment.appendTo(wrapper);
// The HTML of the wrapper is the outerHTML of docFragment
console.log(wrapper.html()); // outputs <div class='test'><span>hello</span></div>
为什么不在一行中完成这一切:
var o = {};
o.content = $( "<div></div>" ) // create element
.addClass('test') // add class
.html( '<span>hello</span>' ); // append content
小提琴:为什么不在一行中完成这一切:
var o = {};
o.content = $( "<div></div>" ) // create element
.addClass('test') // add class
.html( '<span>hello</span>' ); // append content
小提琴:
o、 在本例中,内容是一个jQuery对象,而不仅仅是一个字符串。下面是一个关于JSFIDLE的演示:
o、 在本例中,内容是一个jQuery对象,而不仅仅是一个字符串。这里有一个关于JSFIDLE的演示:很难告诉您想要做什么,请重新措辞。您认为$'div',param的第二个参数是什么?看到了吗,你想要一个HTML字符串或jQuery对象?很难说你想要做什么,请重新措辞。您认为$'div',param的第二个参数是什么?看到了吗,你想要一个HTML字符串或jQuery对象?这可能是OP想要的,你有水晶球吗?@JuanMendes-他说他想让o.content从hello改为hello。这样就可以了。也就是说,假设他想要的是字符串而不是jQuery对象。如果问题被解决了,我们会发现的。我只是很惊讶你是如何从问题中发现的,现在它被重新措辞了,更容易看出这可能是OP想要的,你有水晶球吗?@JuanMendes-他说他希望o.content从hello变为hello。这样就可以了。也就是说,假设他想要的是字符串而不是jQuery对象。如果问题被解决了,我们会发现的。我只是很惊讶你是如何从这个问题中发现的,现在它被重新措辞了,更容易看到它