0

我试图附加这个:'<div>' + htmlEncode(imagefilename) + '</div>'当用户点击取消按钮(.imageCancel)时。但它给了我这个错误:$('<div/>').text(value).html();不是一个函数。如何修复此错误?是不是因为

$('.cancelImage').eq(window.lastUploadImageIndex).append('<div>' + htmlEncode(imagefilename) + '</div>'); 

$(".imageCancel").on("click", function(event) {函数中?

function htmlEncode(value) {
    return $('<div/>').text(value).html();
}


function startImageUpload(imageuploadform, imagefilename) {


    $(".imageCancel").on("click", function (event) {

        $('.cancelImage').eq(window.lastUploadImageIndex).append('<div>' + htmlEncode(imagefilename) + '</div>');

        var image_file_name = $(this).attr('image_file_name');
        jQuery.ajax("deleteimage.php?imagefilename=" + image_file_name)

        $(this).parent().remove();

        $('.upload_target').get(0).contentwindow

        return stopImageUpload();

    });

    return true;
}
4

1 回答 1

3

尝试将功能更改为

function htmlEncode(value) { return $('<div/>').text(value || '').html(); }

我怀疑.text()测试它的参数可能有点不严谨,并将 a 解释null为您希望函数返回所选元素的当前文本内容的含义。

现在,至于为什么参数会是null,这取决于您的代码的其余部分。

于 2012-05-03T00:15:43.120 回答