对于你们所有人来说,这可能是一个简单的问题。但是我正在工作时间而且没有得到正确的答案。
我有像
这样的代码var ss = "<div class='GridCellDiv' style='width: 68px;'>1000</div>";
console.log(ss);
$(ss).text("1001");
console.log(ss);
仍然是1000的价值。我甚至累了.html()但都是徒劳的。 显然我需要更改div
中的文本如何做同样的事情。任何帮助将不胜感激
答案 0 :(得分:2)
您不修改字符串ss
。使用$(ss)
,您可以根据该HTML代码创建一个jQuery对象,然后更改其文本,然后将其丢弃。
看看这个:
var ss = "<div class='GridCellDiv' style='width: 68px;'>1000</div>";
console.log(ss);
ss = $(ss).text("1001");
console.log(ss[0].outerHTML);
答案 1 :(得分:2)
在$(ss).text("1001");
中,您正在使用jQuery包装器创建临时dom对象,并且正在修改其内容,这不会更新ss
变量中的原始源。
如果您需要更新的内容,则需要从创建的dom元素引用中获取它。
你可以这样做
var ss = "<div class='GridCellDiv' style='width: 68px;'>1000</div>";
var $ss = $(ss);
console.log($ss);
$ss.text("1001");
console.log($ss[0].outerHTML);
演示:Fiddle
答案 2 :(得分:0)
试试这段代码
var ss = $(".GridCellDiv")
console.log(ss);
ss.text("1001");
console.log(ss);
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class='GridCellDiv' style='width: 68px;'>1000</div>
&#13;
答案 3 :(得分:0)
为什么不这样做?
$('.GridCellDiv').html('1001');
答案 4 :(得分:0)
您需要将您的String发送到jQuery函数
一旦你的String成为一个包裹着所有漂亮的jQuery方法的HTMLElement,你就可以访问.text()
之类的那些并直接操作Element。
var ss = $("<div class='GridCellDiv' style='width: 68px;'>1000</div>"); // jQuery ElementObject
console.log(ss); // [object Object]...
$(ss).text("1001");
console.log( ss.text() ); // "1001"
console.log( ss[0].outerHTML ); // "<div class='GridCellDiv' style='width: 68px;'>1001</div>"