var text = $(this).text();
alert(text);
Afterdata = "<div><span><input type=text class=inputtext value="+text+">"+
"</span>" +
"<span class=save><input type=button value=Save></span>" +
"<span class=cancel><input type=button value=Cancel></span></div>"
$(this).parent().html(Afterdata);
//$(".inputtext").val(text);
这里是我的代码片段,var text是从span中检索的数据,比如text =“你是怎么做的”。基本上我的代码正在做的是,在我点击跨度文本字段后,它会转换为输入文本字段以及如上所示的两个按钮,其中文本字段保持跨越文本(“你如何做”) 。它应该显示一个预先填充“你如何做”的输入框,但它只填充“如何”没有下面的“你做”部分。奇怪的是,警报功能显示“你如何做”成功和评论底线显示“你如何做”。然而,最奇怪的是我的另一个功能就像一个魅力
var text = $(this).text();
$(this).parent().html("<span class=sample>"+text+"</span>" +
"<span><input type=button value=Delete class=delete></span>");
这是同样的想法。唯一的区别是后一个中的替换部分是span而不是input的值。看到不同?我没有线索。任何帮助?非常感谢你
答案 0 :(得分:3)
你生成的html是这样的:
<div><span><input type=text class=inputtext value=how you doing></span>...
(其余并不重要)
如您所见,value
属性需要引用。此外,您应该考虑文本包含引号的情况,因此需要对其进行转义。
编辑:您可以这样做:
Afterdata = "<div><span><input type=text class=inputtext value=\"" + text.replace(/"/g, '"') + "\">" + "</span>" + "<span class=save><input type=button value=Save></span>" + "<span class=cancel><input type=button value=Cancel></span></div>"
看到它正常工作here。
答案 1 :(得分:0)
在value
属性