Image 将表单提交到div中
有人能告诉我为什么这不起作用,或者给我另一种方式去做我想做的事吗 当我点击submit时,我在页面上有一个表单,我希望它被处理到add.php中,并在一个名为right的DIV中打开 表格页Image 将表单提交到div中,image,html,Image,Html,有人能告诉我为什么这不起作用,或者给我另一种方式去做我想做的事吗 当我点击submit时,我在页面上有一个表单,我希望它被处理到add.php中,并在一个名为right的DIV中打开 表格页 <script> $("#Submit").click(function() { var url = "add.php"; // the script where you handle the form input. $.ajax({ type: "POST",
<script>
$("#Submit").click(function() {
var url = "add.php"; // the script where you handle the form input.
$.ajax({
type: "POST",
url: url,
data: $("#myForm").serialize(), // serializes the form's elements.
success: function(html){ $("#right").html(html); }
});
return false; // avoid to execute the actual submit of the form.
});
</script>
</head>
<body>
<form action="add.php" method="post" enctype="multipart/form-data" id ="myForm">
Name: <input type="text" name="name"><br>
E-mail: <input type="text" name = "email"><br>
Phone: <input type="text" name = "phone"><br>
Photo: <input type="file" name="photo"><br>
<input type="submit" value="Upload">
</form>
</body>
$(“#提交”)。单击(函数(){
var url=“add.php”;//处理表单输入的脚本。
$.ajax({
类型:“POST”,
url:url,
数据:$(“#myForm”).serialize(),//序列化表单的元素。
成功:函数(html){$(“#right”).html(html);}
});
return false;//避免执行表单的实际提交。
});
名称:
电子邮件:
电话:
照片:
现在,如果我将动作添加到表单中,将其定向到add.php,那么其他脚本都可以正常工作。但是,当我这样做时,没有发生任何事情。它不会像我希望的那样将add.php加载到“right”div中
有人有任何建议吗?您的$(“#提交”)选择器与任何内容都不匹配(提交按钮没有id,并且是在绑定尝试之后定义的),因此该函数未绑定到任何事件,因此从未执行过
相反,表单的行为方式应该是:提交后将其内容发布到“action”属性中指定的url。事情就是这样,那个div永远不会被碰
您必须回去了解jquery选择器是如何工作的。如何将函数绑定到事件 这是您的准确代码吗?有几个问题:
应包装在准备好的文档中 处理程序,使其在页面实际加载之前不会运行$(“#提交”)。单击
- 没有与#提交匹配的按钮
- 没有匹配的div,对吗
jQuery(文档).ready(函数($){
$(“#提交”)。单击(函数(){
var url=“add.php”;//处理表单输入的脚本。
$.ajax({
类型:“POST”,
url:url,
数据:$(“#myForm”).serialize(),//序列化表单的元素。
成功:函数(html){$(“#right”).html(html);}
});
return false;//避免执行表单的实际提交。
});
});
名称:
电子邮件:
电话:
照片:
您必须在div-in-body标签上创建正确的id,并且
<input id="submit" type="submit" name="upload" >
在body标记中添加新的div,如下所示
<div id="right"></div>
响应代码是什么?您可以使用Firebug在控制台上调试并查看ajax请求的响应代码。是的,很抱歉,我正在测试表单上的操作,我希望它在表单中不包含动作,因此它加载到div中,而不是实际的url中,显然脚本起到了神奇的作用。如果我正确理解了该注释,您会声称表单声明中的动作属性只是为了调试目的。如果是这样,请编辑您的问题并将其删除。第二:即使没有美元(“#提交”)也不匹配。js函数永远不会执行。您可能想尝试在浏览器中使用js调试器,并检查它是否正常工作。谢谢,我现在遇到的唯一问题是,当它处理add.php时,它会将除图像url以外的所有内容都放入数据库中,不会像以前那样将图像上传到服务器,如果我通过url运行图像就会这样做。看到答案了吗?看不懂,我对这一切都很陌生,如前所述,当在add.php中处理时,所有从表单写入数据库的操作都是在add.php中进行的,只有图像没有插入或上传到服务器,add.php是所有php编码。基本上,AJAX上传将对除实际文件外的所有表单数据进行subit。如果您是新手,那么我会选择iframe方法进行文件上传,因为AJAX方法非常新,可能会让您感到困惑。在实际代码之外单独尝试以下教程。如果有人能很好地将其添加到上面的脚本中,那就太好了。这不像是一个完整的脚本编写,这就是这个网站的目的?帮助某人做他们不能做或不能理解的事情。
<div id="right"></div>