【发布时间】:2013-02-12 07:31:28
【问题描述】:
我正在使用
<script src="http://malsup.github.com/jquery.form.js"></script>
用于我的 ajax 表单上传。
当我在没有 Codeigniter 框架的情况下上传文件时,它可以正常工作。但是当我在框架中使用它时,它会显示以下错误:-
HTTP wrapper does not support writeable connections
另外它实际上是在加载一个单独的页面
这是我的代码:-
<html>
<head>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7/jquery.js"></script>
<script src="http://malsup.github.com/jquery.form.js"></script>
<script type="text/javascript">
$(document).ready(function() {
var options = {
clearForm: true,
resetForm: true
};
// bind 'myForm' and provide a simple callback function
$('#myForm').ajaxForm(function() {
//alert("Thank you for your comment!");
});
$('#myForm').ajaxForm(options);
});
</script>
</head>
<body>
<form id="myForm" name="myForm" action="comment.php" method="post" enctype="multipart/form-data">
<input type="text" name="name" />
<br />
<textarea name="comment"></textarea>
<br />
<input type="file" value="Share a Pic" name="file" id="file" />
<br />
<input type="submit" value="Submit Comment" />
</form>
</body>
对于 Codeigniter,我将操作更改为
site/submit_myform
因此它会加载站点/submit_myform。站点是我的控制器。其他值正在存储在数据库中
谢谢
【问题讨论】:
-
你可以使用firefox或chrome的控制台,去newtork选择xhr请求,看看ajax请求使用的是哪个url?
-
嗨,现在一切正常,文件上传功能和所有输入数据正在存储。但它正在重定向到一个单独的页面。我试过你上面说的,但我在提交表单时看不到任何网址
-
我什至从表单中删除了该操作,然后在 var options = { 部分中添加了一个 url,但它仍然不起作用
-
如果你使用谷歌浏览器开发者工具在底部你有一个黑色圆圈按下它然后它会变成红色,这意味着会记录每个请求,也许这样你即使在之后也可以看到所有请求重定向
-
它显示类似评论 /main 的内容,即名称/路径
标签: ajax codeigniter file-upload form-submit