我知道这个问题已被多次询问但在看到这么多例子后不确定,我无法弄清楚为什么它没有发生..
这是我的代码
function update(tid,sid) {
var getTID = tid;
var getSID = sid;
$("#flow_" + getTID + "~" + getSID).html('Loading...');
$.ajax({
url: 'generate.cfm?tID=' + getTID + '&sID=' + getSID,
type: "GET",
cache: false,
success: function(data){
var k = $(data).find("img");
$("#flow_" + getTID + "~" + getSID).empty();
$("#flow_" + getTID + "~" + getSID).append(k);
}
});
}
这是div代码
<div id="flow_#tid#~#sid#" style="margin: 0 10px 0 0;float:right;height:150px;" class="code">
<img src="#request.webbaseurl#assets/codes/#code#.jpg" style="max-height: 230px;">
</div>
我在这里遗漏了一些东西,不知道什么是超时或者什么,但是在成功通话后,它应该重新载入div
更新#1
这里我做了更改,我在响应之后做了以下操作,以确保我得到图像,而不是图像标记,我使用div id并在警报中加载内部img元素,我测试了
success: function(data){
var k = $(data);
var hiddenField = $('<div type="hidden" ></div>');
hiddenField.append(k);
var images = hiddenField.find('#inner');
$("#ystack_" + getTID + "~" + getSID).hide();
$("#flow_" + getTID + "~" + getSID).empty();
$("#flow_" + getTID + "~" + getSID).append(images.html());
}
但它会重新加载div,如果我刷新整个页面,它会显示更改的内容
答案 0 :(得分:0)
您无法直接找到图像对象。
var k = $(data).find(“img”);
这不会work.store响应隐藏元素中的HTML代码并找到图像标记。 HTML代码
<div id="hiddendiv" style="display:none;"> </div>
JQuery ajax成功
success: function(data){
$('#hiddendiv').HTML(data);
var obj =$('#hiddendiv').find(img);
$("#flow_" + getTID + "~" + getSID).empty();
$("#flow_" + getTID + "~" + getSID).append('<img src="'+obj.attr("src")+'"/>');
}