我有一个HTML表格,我需要更改它的内容。
<div id='adf'>
<table id='tbl1' runat='server' >
<tr><td></td></tr>
</table>
</div>
我正在使用jQuery Ajax更改内容,问题是我之后访问了同名的表。所以我正在更改HTML内容并插入新表的HTML将添加一个新表。所以我需要删除表行并将结果添加到表中。所以内容没有变化。提前谢谢。
答案 0 :(得分:2)
如果我理解正确,请在运行ajax调用后使用html()函数更改内容。
作为效率提示,请确保将所有更改加载到字符串中,并在结尾处调用html()一次。否则,您会发现您的网页速度非常慢。
如果您只是添加新行,请使用append()。 http://api.jquery.com/append/
表格具有相同的名称并不重要。只需通过标识符抓住它。
答案 1 :(得分:1)
$('#tbl1').html($('#tbl1').html() + "<tr><td>this is new row</td></tr>")
答案 2 :(得分:0)
答案 3 :(得分:0)
您需要使用表格的ClientID,因为它是runat="server"
$.get('ajax/tbl1.html', function(data) {
$('#' + <%= tbl1.ClientID %>).html(data);
});
tbl1.html将包含替换行。您可以将其更改为aspx页面或php或返回html的Web服务。
以下是一个示例JQuery AJAX调用,过去对我有用:
jQuery.ajax({ type: "POST",
url: "MyWebService.asmx/GetHtml",
data: "{'Id' :'" + tableId + "'}", //may not be necessary in your case
dataType: "json",
contentType: 'application/json; charset=utf-8',
success: function(json) {
var result = eval("(" + json.d + ")");
jQuery('#' + <%= tbl1.ClientID %>).html(result.value);
}
});
请注意使用JSON和调用eval。