是否可以在添加到元素之前修改responseText?
$('#target').load('script.php', params, function(response,status,xhr){
response = 'foo'; // doesn't work
xhr.responseText = 'foo'; // doesn't work
return 'foo'; // doesn't work
})
我认为获得我想要的唯一方法是使用ajax
方法并在成功时填充我的目标。
答案 0 :(得分:0)
您必须使用jQuery's get
method:
$.get('script.php', params, function (responseText) {
$('#target').html( responseText + 'foo' );
});
答案 1 :(得分:0)
<body>
<div>
<img id="random-dog" src=""/>
</div>
<button>Get me a doggo</button>
<script>
$("button").click(function () {
$("#random-dog").load("https://dog.ceo/api/breeds/image/random", function (responseTxt, statusTxt, xhr) {
if (statusTxt == "success")
this.setAttribute("src", JSON.parse(responseTxt).message);
console.log("External content loaded successfully!");
if (statusTxt == "error")
console.log("Error: " + xhr.status + ": " + xhr.statusText);
});
});
</script>
</body>
在回调函数内部,如果状态文本成功,则处理响应并将其设置为 this
src 属性。 this
表示选择器元素。
API 结构是:
{
"message": "https://images.dog.ceo/breeds/whippet/n02091134_10242.jpg",
"status": "success"
}