0

在 Wordpress 中关闭厚框时,我试图首先将通过厚框选择的图像添加到屏幕(工作),然后运行一个小的 AJAX 例程来更新数据库中的选项(导致错误)。

但是,我得到了错误NS_ERROR_XPC_BAD_CONVERT_JS: Could not convert JavaScript argument,我不知道为什么。

目前,我正在做的只是尝试测试 AJAX 函数是否被选中,所以 PHP 函数所做的所有事情都是echo 'Working!';,所以我很确定问题出在 JS 的某个地方,而不是返回的内容的PHP。但是,注释掉 AJAX 调用确实意味着错误不会出现。

有没有人有任何故障排除建议?我现在不知道该去哪里看。谢谢。

jQuery(document).ready(function($){

    window.send_to_editor = function(html){

        /** Grab the image URL and image ID */
        var image_url = $('img', html).attr('src'),
            classes = $('img', html).attr('class'),
            id = classes.replace(/(.*?)wp-image-/, '');

        /** Add the imgae ID to a hidden field, so that it can be saved */
        $('#office-image input#image-id').val(id);

        /** Remove the Thickbox */
        tb_remove();

        /** Place the image src in the hidden image, and then show the image */
        $('#office-image img#image-preview').attr('src', image_url);
        $('#office-image img#image-preview').css('display', 'block');
        $('#office-image img#image-preview').css('margin-bottom', '5px');

        /** Check to see if the user is editing an Office, and if they are, update the Image in the database */
        if($('#dd-options-edit-office-page').length) {

            /** Set the params for passing to the AJAX function */
            data = {
                security: $('input#_wpnonce', '#dd-options-edit-office-page'),
                action: 'update-office-image'
            };

            $.post('admin-ajax.php', data, function(response){

                alert(response);

            });

        }

    }

});

谢谢,

4

1 回答 1

1

看看这个:

data = {
                security: $('input#_wpnonce', '#dd-options-edit-office-page'),
                action: 'update-office-image'
            };

data.security包含一个 jQuery 对象,无法发送此对象。

我猜你喜欢发送输入的值:

data = {
                security: $('input#_wpnonce', '#dd-options-edit-office-page').val(),
                action: 'update-office-image'
            };
于 2013-01-02T13:18:39.663 回答