
模仿微信公众号后台投票管理功能。
可以动态添加多个问题,每个问题下面默认有两个选项,也可动态添加多个。已经通过 JS 实现动态添加功能,但在 PHP 中无法获取到问题选项的值,单个选项的 html 如下
<input type="text" class="fyinput" name="options[][]" /><span class="red">*</span>
<input type="file" name=quot;pic[][]" class="file" size="28" />
因为每个问题下面都有选项,如果 name="options[]" 这样就无法获知那个选项属于哪个问题。
请问如何正确设置 input 元素的 name 属性。
1 patosky 2015 年 11 月 20 日 加个序号呗 |
4 Light3 2015 年 11 月 20 日 你这个提交是什么样的提交阿 ajax 还是直接提交阿 我感觉你可以 js 加新的选项的时候在后面 i++一样加序列号 这样不就对上了 |
6 csensix OP @Light3 直接提交。刚开始也是打算 js 加序号上去,由于页面上 html 元素以及一些元素类比较多,觉得不方便添加,试图用数组命名的方式来实现,却发现用不了二维的数组。 |
7 b821025551b 2015 年 11 月 20 日 <div class="q_and_a"> <input value="question"> <div class="answer_ist"> <input value="answer"> <input value="answer"> </div> </div> 这种结构,用 jquery 选择器选择 q_and_a 类的子 input 值,存入数组 questionArr ;遍历选择 q_and_a 类下的 answer_list 所有 input 值,存入 questionArr 对应的问题下 |
8 csensix OP @b821025551b 还有图片上传呢 |
9 b821025551b 2015 年 11 月 20 日 @csensix 图片上传用单独接口啊,用这个接口拿到 path 或者 id 再走主流程,不然失败几率会很高 |
10 gdtv 2015 年 11 月 20 日 我的项目也遇到类似的问题,我就是加序号的,至于删除后剩下元素的序号这个在 php 端处理一下就行了 |
11 csensix OP 谢谢大家,我试着添加序号看能否顺利解决 |
12 BOYPT 2015 年 11 月 20 日 显然应该在服务器端建立好每个问题的 input 的唯一键值。 |
13 loveyu 2015 年 11 月 20 日 感觉复杂的表单就应该前端把对象 JSON.stringify()一下,然后 ajax 传过去再 json_decode(),一堆$_POST ,实在不好理清 |
14 csensix OP 谢谢大家的帮助。通过增加一个隐藏字段来存储问题数组,新增和删除问题时都去修改该字段值,如 1,2,3 问题内的选项就直接通过 options_1[] options_2[] 这样存储就 ok 了。 |