让我们假设浏览器在页面
之后呈现<html>
...
<body>
<div id="partialContainer">
<script>
function saveItems(){
/* do somthing*/
}
</script>
<input type="button" id="btnTest" name="btnTest" value="Test" onclick="saveItems()"/>
</div>
</body>
</html>
在AJAX调用之后并更改&#34; partialContainer&#34;内容使用
$("#partialContainer").html(returnedMarkup)
saveItems函数仍然保留在页面中并且可以执行 如何在替换标记时删除此功能以避免名称删除
答案 0 :(得分:0)
var saveItems = function () {}
在Ajax之后,为其分配一些其他值,最好是上面的值。
答案 1 :(得分:0)
尝试将saveItems
设为undefined
$("#partialContainer").html(returnedMarkup);
if (!!saveItems && $.isFunction(saveItems)) saveItems = void 0;
答案 2 :(得分:0)
在你的ajax成功回调函数上,只需执行:
$("#btnTest").prop( "onclick", null );
请注意$.removeAttr('onclick')
将失败,即6-8,所以.prop()
更好。
答案 3 :(得分:0)
您可以将函数放在对象文字中:
var obj = { saveItems: function() { } }
并在ajax
之后删除它delete obj.saveItems