php表单复选框提交数据问题

我有一个类似下面的表单<formaction="user.php"method="post"onsubmit="returntuihuan_return()"><tr><... 我有一个类似下面的表单
<form action="user.php" method="post" onsubmit="return tuihuan_return()">
<tr>
<input type="checkbox" class="select_goods" name="check[]" value="1" />
<td>value1</td>
<td>value2</td>
</tr>
<tr>
<input type="checkbox" class="select_goods" name="check[]" value="2" />
<td>value1</td>
<td>value2</td>
</tr><tr>
<input type="checkbox" class="select_goods" name="check[]" value="3" />
<td>value1</td>
<td>value2</td>
</tr></form>

我获取check的状态都没有问题,值也能获取到,问题是我只想获取选中行的后面的<td>的值,但是现在提交过去的打印出来如上图,我check只有2行,但是rec_id把没有选中行也传了过去,求怎么处理才能正确获取选中行后面的值
刚才上面的忘记加上<table>标签
展开
 我来答
uowangshi
2012-10-09 · TA获得超过440个赞
知道小有建树答主
回答量:464
采纳率:0%
帮助的人:506万
展开全部
<input name="check[]" value="1" />
选中这一项,提交后,php得到数组
$check = array( 0 => '1' );
正常情况,php是不可能获取到后面html代码的内容。

建议改成这样的,将后面需要的值,放入value中。
<input name="check[]" value="1,value1,value2" />
这样提交后得到数组
$check = array( 0 => '1,value1,value2' );
在使用逗号分隔成新的数组。
$new = array( 0 => array( 0=>'1',1=>'value1',2=>'value2' ) );
追问
谢谢  最终的解决思路就是这样的  可是你来晚啦
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
冷然一啜烦襟涤
2012-10-09 · 超过18用户采纳过TA的回答
知道答主
回答量:63
采纳率:0%
帮助的人:41万
展开全部
你的三个input用的name都是check
最后一个check的值会吧前两个覆盖掉
如果你想同时提交三个checkbox的值 name就不要设置成一样的
追问
这个我知道 可能是我打错了 我现在是可以提交三个check的,但是 选中后才提交后面列的值怎么处理呢?
追答
比如哈:
请选择: 单人口 双人口 混合口 这是一个checkbox效果
那你html页面写的就是


混合

这样你提交过去的check数组就是你选中的值
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友6ae6242
2012-10-09 · TA获得超过563个赞
知道小有建树答主
回答量:228
采纳率:50%
帮助的人:148万
展开全部
我咋就没看见你的rec_id在哪啊?? rec_id是用户手动输入的吗?
----------------------------------------------------------------------------------
<form action="user.php" method="post" onsubmit="return tuihuan_return()">
<tr>
<td><input type="checkbox" class="select_goods" name="check[]" value="1" /></td>
<td>value1</td>
<td>value2</td>
</tr>
<tr>
<td><input type="checkbox" class="select_goods" name="check[]" value="2" /></td>
<td>value3</td>
<td>value4</td>
</tr>
<tr>
<td><input type="checkbox" class="select_goods" name="check[]" value="3" /></td>
<td>value5</td>
<td>value6</td>
</tr>
</form>
哪里是输入的? 如果只勾选第一个复选框提交了,你想得到的是什么样的?[check]=>array([0]=>1) 还是 [check]=>array([0]=>value1value2)?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
411192132
2012-10-09 · TA获得超过108个赞
知道小有建树答主
回答量:99
采纳率:100%
帮助的人:114万
展开全部
你为什么不把rec_id里面的值放到check里面去?如果你想一一对应的话,那就不要使用这种check[]的方式,而是使用check1 check2 check3的方式,这样你就知道你被选中的是哪几个了,然后通过这个去rec_id的数组里面找,这个也是一个办法。
追问
我也想过把rec_id的值放到check的value里面,但是后面的列值是用户手动输入的,所以...
追答
那你就用第二个方法,不要写check[]。这样你获取不到具体的序号的,写check1 check2这种,就可以了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
无忧杂铺
2012-10-09 · 超过14用户采纳过TA的回答
知道答主
回答量:54
采纳率:0%
帮助的人:29.5万
展开全部
td内的值必须通过<input> 标签,把checkboc的value值改成td后的值不行吗?
追问
首先谢谢你的回答,里面的值是有标签的,还有标签,但是因为后面的有手动输入的,我没法放在check的value中
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式