我有一个使用signalR的页面。服务器调用客户端函数并将图像路径传递给它。即' Contents / myimage.png'。在客户端函数内部,我使用jquery来加载这些图像。我没有在chrome中出现任何错误,图片没有默认情况下没有加载图片,但图片也没有。该函数被调用。我错过了什么?
client.onStart = function(myPortrait){
$("#myPortrait").load(myPortrait);
}
<img id="myPortrait" width="256" height="256" />
答案 0 :(得分:3)
$.load
将html替换为url中的内容,例如,对于返回<div>replacement</div>
的函数,您可以这样做:
$("#mydiv").load(url);
你得到
<div id='mydiv'><div>replacement</div></div>
在这种情况下,当数据将url返回到图像时,您要设置图像的 src ,而不是替换html,因此请更改为:
client.onStart = function(myPortrait) {
$("#myPortrait").prop("src", myPortrait);
}
如果您通过ajax调用(而不是SignalR调用)执行此操作:
$.ajax({
url: url,
}).done(function(data) {
$("#myPortait").prop("src", data);
});
答案 1 :(得分:0)
改为使用:
$("#myPortrait").load(myPortrait);
你可以使用:
$("#myPortrait").attr('src', myPortrait);