我正在使用replaceWith()
jQuery 中的函数来更新我的网页。我从 C# Web 服务程序接收数据,该程序从数据库中提取数据以构建我的 HTML 代码。它工作正常,除非我替换大量数据。在不起作用的示例中,我将网页中的代码替换为 39000 字节的数据。之后,单击跨度调用 JavaScript 函数时,我的所有链接都不起作用。函数中使用的数据大小是否有限制replaceWith()
?我要替换的 html 代码如下所示:
<td align=left valign=top>
<div id="showitems" class="showitems" style="display:inline; float:left"></div>
</td>
javascript 代码如下所示:
function ShowDinerItems() {
var gps = document.getElementById("selectdiner").value;
var pos = gps.indexOf(";");
var len = gps.length;
var latitude = document.getElementById("Hiddenlat").value;
var longitude = document.getElementById("Hiddenlng").value;
var dinerkey = gps.substring(0, pos);
PageMethods.CallShowDinerItems(dinerkey, latitude,longitude, OnShowDinerComplete, OnShowDinerError, dinerkey);
}
function OnShowDinerComplete(result) {
var htmlcode = result[0];
if (result == 'none') {
document.getElementById("Message").value = "Search returned no items";
}
else {
var htmlcode = result[0];
htmlcode = "<div id=\"showitems\" class=\"showitems\" style=\"display:inline\">" + htmlcode + "</div>";
$('.showitems').replaceWith(htmlcode); // size of htmlcode is 39849 bytes
var locations = result[1].split(";");
var lat = locations[0];
var lng = locations[1];
markDiner(lat, lng, "", 'map_canvas');
}
}
我使用 jquery 构建网页的原因是为了避免页面重新加载。我可以很容易地在我的 C# 程序中对 webdata 内容进行编程,这可能会更有效,但要避免页面重新加载,这取决于拥有该网站的人的指示。我会尝试给出的建议。
注意:我使用以下代码使其工作。
$('.showitems').html(result[0]);
使用 .text 将不起作用,因为它显示的是原始数据而不是 html 数据。感谢那些做出贡献的人。