为什么只寄了一张表格
Why just one of the forms is sent?
我有这两个表单,我想一键发送它们。第一个表单将图像加载到服务器中。第二个程序将信息加载到数据库中。由于某些原因,总是只发送"myform"。什么好主意吗?
<form action="uploadpic.php" method="POST" enctype="multipart/form- data" />
<input type="file" name="user_image" id="user_image" />
</form>
<form method = "post" id= "myform" name="myform" action = "<?php $_PHP_SELF ?>">
<table width = "400" border = "0" cellspacing = "1" cellpadding = "2">
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<script type="text/javascript">
$(document).ready(function () {
$("#add").click(function () {
var $form1 = $("#myform");
$.post($form1.attr("action"), $form1.serialize(), function () {
alert('Form 1 elküldve');
});
$('form[name="user_image"]').each(function () {
var $form = $(this);
$.post($form.attr("action"), $form.serialize(), function () {
alert('Form 2 elküldve');
});
})
});
});
</script>
你可以同样使用一个表单并发送两个数据到你想要的地方
<form action="uploadpic.php" method="POST" enctype="multipart/form- data" />
<input type="file" name="user_image" id="user_image" />
<table width = "400" border = "0" cellspacing = "1"
cellpadding = "2">
//... other form details
</form>
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<script type="text/javascript">
$(document).ready(function () {
$("#add").click(function () {
var $form1 = $("#myform");
$.post($form1.attr("action"), $form1.serialize(), function () {
alert('Form 1 elküldve');
});
$('form[name="user_image"]').each(function () {
var $form = $(this);
$.post($form.attr("action"), $form.serialize(), function () {
alert('Form 2 elküldve');
});
})
});
});
</script>
您需要稍微修改一下javascript。$('input[name="user_image"]').each(function () {
将用name="user_image"
迭代输入并得到它的形式。(我猜这就是你想要的)
<script type="text/javascript">
$(document).ready(function () {
$("#add").click(function () {
var $form1 = $("#myform");
$.post($form1.attr("action"), $form1.serialize(), function () {
alert('Form 1 elküldve');
});
$('input[name="user_image"]').each(function () {
var $form = $(this).parent('form');
$.post($form.attr("action"), $form.serialize(), function () {
alert('Form 2 elküldve');
});
})
});
});
</script>
BUT如果您只有一个带有name="user_image"
的输入元素,那么这是更合适的:
<script type="text/javascript">
$(document).ready(function () {
$("#add").click(function () {
var $form1 = $("#myform");
$.post($form1.attr("action"), $form1.serialize(), function () {
alert('Form 1 elküldve');
});
var $form = $('input[name="user_image"]').parent('form');
$.post($form.attr("action"), $form.serialize(), function () {
alert('Form 2 elküldve');
});
});
});
</script>
相关文章:
- 有人能提供一张ember数据与broswer's的持久层
- jQuery只隐藏<tr>在一张桌子上
- 如何从三张图片中选择一张?其余的必须是看不见的
- 通过onclick事件将一张图片更改为6张图片
- Sequelize hasMany浏览另一张表
- jm按下停止步骤进入滚动的下一张幻灯片
- 我用JavaScript FIleReader读了一张图片,但是我无法得到图片的信息
- 当 Flickity 到达下一张或上一张幻灯片时的事件
- 单击从一张图像切换到两张图像,然后再切换回一张图像
- 单击另一张图像,显示一张图像几秒钟
- 为什么bxSlider会打断我在最后一张幻灯片和第一张幻灯片之间的转换
- 用d3和topojson绘制一张地图
- 为什么两张表格都是一页的
- Google 电子表格脚本 - 仅授予对一张工作表的访问权限
- Google表格脚本,用于将一张工作表上的几个单元格值传递给新的工作表行
- 我能给客户一张表格吗
- 谷歌电子表格脚本为包含某个单词的行着色,并自动将该行移动到另一张工作表
- 在一张表格上做两个动作
- 为什么只寄了一张表格
- 谷歌电子表格脚本.仅适用于一张图纸