0

这是我的代码:

JS/jQuery:

function RefreshImage(){
    var form_data = {
        ID: $('#ID').val()
    };

    $.ajax({
        type: "POST",
        url: "submit/image.php",
        data: form_data,
        success: function(data) {
            $('#IMG').css('backgroundImage', "url('images/+data+')");
        }
    });
}

HTML:

<table>
    <tr>
        <td background="images/default.jpg" id="IMG"></td> 
    </tr>
</table>
<input type="hidden" id="ID" value="4">

CSS:

#IMG{
    background-color:rgba(0,0,0,0.5);
    width:99px; height:99px;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
    vertical-align:text-top;
}

我的代码失败了,因为它只是变成了黑色图像。但是在响应中,它显示了我请求的图像名称的确切值,但它失败了,因为它只是变成了黑色。

提前谢谢。

4

2 回答 2

6

background-image是正确的 CSS 属性,而不是backgroungImage. 更新正如评论中所指出的,'backgroundImage' 是有效的,因为它引用了 javascript 属性。

您在连接上也有问题data

 $('#IMG').css('background-image','url(images/' + data + ')');

此外,删除background你的属性<td>,并通过 css 应用它:

 #IMG{ background-image: url(images/default.jpg); }
于 2013-10-25T15:57:39.290 回答
0

尝试改变

$('#IMG').css('backgroundImage',"url('images/+data+')")

$('#IMG').css('backgroundImage','url(images/'+data+')');
于 2013-10-25T15:59:07.380 回答