需要替代.trigger上的回调

时间:2014-06-16 01:19:14

标签: javascript jquery tinymce

我在一个菜单项上使用onclick事件来触发.trigger表单中的输入类型文件(可能不是最佳实践)来上传文件。唯一的问题是.trigger上没有回调,我将用它来进行ajax调用。

这是我正在使用的三段代码

    <form id="image_submit">
    <input id="image_uploader" type="file" accept="image/jpeg, image/png">
    </form>

    function submit_image(){

        $.ajax({
            type: "POST",
            url: "lib/cms/cms_switch.php",
            async: false,
            dataType: "json",
            data: {switch_id: 5},
            success: function(response) {

               alert('good');

            },
            error: function(xhr, ajaxOptions, thrownError) {

                alert(xhr.responseText);
                alert(thrownError);
            },
        });
    }

    editor.addMenuItem("Upload Image", {
                name: "Upload Image",
                text: "Upload Image",
                context: 'tools',
                onclick: function(event) {
                    alert("here")
                    $('#image_uploader').bind('click', function(){
                        submit_image();
                    });
                    $('#image_uploader').trigger('click');
                }
        })

问题是在用户选择要打开的文件之前,执行submit_image。

任何想法或批评都会非常感激

1 个答案:

答案 0 :(得分:0)

submit_image()

使用 change 事件
  $('#image_uploader').bind('change', function(){
            submit_image();
   });

文件选择后更改火灾。点击输入字段点击火灾。