我正在尝试替换所选“div”元素的内容,并将其附加到父控件。到目前为止,我能够克隆并将其附加到父级,但我想知道如何替换内部的某些标签。
这里具体是我用来克隆目标控件的jquery
var x = $(parent).children('div[class="answer"]:first').children('div[class="ansitem"]:first').clone();
克隆div中的html内容如下:
<div id="ansthumb_anstext_anscontrols">
<div id="image" class="ansthumb">
replace 1
</div>
<div id="atext" class="anstext">
<p class="atext_para">
<span id="mainwrapper_QRep_ARep_0_UName_0" style="color: rgb(51, 102, 255); font-weight: bold;">Replace 2 </span>
Replace 3
</p>
<p id="answercontrols">
<input name="ctl00$mainwrapper$QRep$ctl01$ARep$ctl01$AnsID" id="mainwrapper_QRep_ARep_0_AnsID_0" value='replace 4' type="hidden">
<a id="mainwrapper_QRep_ARep_0_Like_0" title="Like this answer" href="#">Like</a>
<a id="mainwrapper_QRep_ARep_0_Report_0" title="Report question" href="#">Report</a>
<span id="mainwrapper_QRep_ARep_0_lblDatetime_0" class="date"> replace 5 </span>
</p>
</div>
这里我标记了我想要替换的所有区域。上述div元素的id是这样命名的,因为它是在转发器控件中生成的。
我已经完成了jquery API,据我所知,这个函数似乎应该是我应该使用的东西。
replaceWith(内容)
但这种方式的缺点是我必须将整个html转储到字符串变量并在需要的地方包含替换文本。我认为这不是最好的方式,可能就像选择特定标签和更改数据一样。任何帮助appuricated家伙!
感谢
答案 0 :(得分:1)
您可以使用.html()
和其他几个jQuery函数,并使用周围的元素作为选择器。
例如
<script type='text/javascript'>
$("#image").html("YourData1"); //replace 1
var secondSpan = $("#mainwrapper_QRep_ARep_0_UName_0");
$(secondSpan).html("YourData2"); //replace 2
$(secondSpan).after("YourData3"); //replace 3
$("#mainwrapper_QRep_ARep_0_AnsID_0").attr("value", "YourData4"); //replace 4
$("#mainwrapper_QRep_ARep_0_lblDatetime_0").html("YourData5"); //replace 5
</script>
由于这些ID是由.NET定义的,因此您可以获取.NET控件的ClientID。
例如:
var secondSpan = $("#<%= UName.ClientID %>");
希望这有帮助!