我有一个表单,我一直在使用.ajax()成功提交而没有页面刷新,但我修改了我的表单以包含上传字段而且没有上传。所以我尝试使用ajaxForm()方法,它可以发布和上传,但它会刷新页面。如何阻止它刷新页面?
我试图将返回false视为错误,它会使提交完全停止。
这是我到目前为止所拥有的
var options = {
target: '#post',
url: '<?php echo $linkr; ?>',
success: function() {
$("#post").load("<?php echo $linkr; ?>");
}
};
$("form").submit(function () {
$(this).ajaxForm(options);
return false;
});
此代码转到空白页但发布并上传:
var options = {
target: '#post',
url: '<?php echo $linkr; ?>',
success: function(result) {
$("#post").html(result);
}
};
$("form").ajaxForm(options);
重申一下,我需要它来发布和上传没有页面刷新。使用.ajax()完成此操作但不上传。使用preventDefault不起作用,或者我使用它错了。
答案 0 :(得分:1)
$("form").submit(function (e) {
e.preventDefault();
$(this).ajaxForm(options);
});
答案 1 :(得分:0)
尝试这样的事情让我知道 -
var options = {
target: '#post',
url: '<?php echo $linkr; ?>',
success: function(result) {
$("#post").html(result);
}
};
答案 2 :(得分:0)
基本上你的问题是浏览器不支持正常上传文件而不重新加载页面。可以使用HTML5或flash。
您可以阅读本教程以了解如何使用HTML5实现ajax文件上传 http://net.tutsplus.com/tutorials/javascript-ajax/uploading-files-with-ajax/
或者您可以使用http://www.uploadify.com/
等插件