如何防止浏览器使用jQuery Form插件更改为表单操作url?

时间:2012-03-02 19:23:54

标签: jquery jquery-plugins

我正在使用OpenLayers和jQuery Mobile,并尝试将图像上传到服务器并查看没有页面刷新的预览。 我有这个代码:

标记:

<form id="imageform" method="post" enctype="multipart/form-data" action='image.php'>
  <input type="hidden" id="fid" name="fid">
  <input type="file" accept="image/*;capture=camera" name="imagechooser" id="imagechooser">           </form>
<div id="imagepreview"></div>   

JavaScript的:

$('#imagechooser').on('change', function(event){        
    $("#imagepreview").html('');
    $("#imagepreview").html('<img src="loader.gif" alt="Uploading...."/>');
    $("#imageform").ajaxForm({          
        target: '#imagepreview'
    }).submit();
});

一切正常,文件上传,目标显示图片,但浏览器更改为页面:www.mypage.com/image.php,页面为空,只有一个单词:“undefined”,以查看目标我需要按下浏览器上的后退按钮。

有什么办法可以阻止浏览器更改并显示该页面?

感谢。

1 个答案:

答案 0 :(得分:1)

您是通过浏览器默认提交而不是ajax提交表单。这导致表单action页面打开。如果你想要ajax submittal,请使用ajaxSubmit()方法