如何在Ajax请求之后重新加载特定的元标记(由php生成)?
标签:
<meta name="csrf-token" content="efca1389c7f2323c875f3197ead688e9206d8835e10ef618e1241faac2dc750e">我在Ajax成功响应中尝试的方法(它不起作用):
$("meta[name=csrf-token]").load(location.href+" meta[name=csrf-token]>*","");我很肯定我选错了,但找不到正确的方法。有人能帮忙吗?
发布于 2018-04-05 13:40:17
问题是,load()填充了目标标记的内容。这不是你想做的。相反,您需要更新标记的属性,或者将整个标记替换为从AJAX请求中检索的更新标记。
您可以这样实现后者:
$.ajax({
url: location.href,
success: function(html) {
var newMeta = $(html).find('meta[name="csrf-token"]')
$('meta[name="csrf-token"]').replaceWith(newMeta);
},
error: function(x, s, e) {
console.log('Something went wrong...');
}
});发布于 2018-04-05 13:42:12
你可以这样做:
var metaTag = document.querySelector('[name="csrf-token"]');
metaTag.setAttribute('content', yourNewDescriptionContent);假设内容是要更改的元素中的属性。
https://stackoverflow.com/questions/49673774
复制相似问题