dqby43944 2015-09-06 08:53
浏览 68
已采纳

无法通过Jquery.post发送数组

So,I have an array of input values:

<input type="text" placeholder="write your Question" id="question[]"  value="" />

and I'm sending this inputs through this code:

    $.post("function.php",{Question:$("#question").serialize()},function(data){
        $("#construct").append(data);
        alert('done');
    });

But when I try to use these values in my PHP,I have some errors.

PHP(function.php):

$Question=htmlentities($_POST['Question'],ENT_QUOTES,"UTF-8");
//line 13
$Quiz->InsertQuestion($Q_id,$Question[0]);
//line 14
$Quiz->InsertQuestion($Q_id,$Question[1]);

the error says:

Notice: Uninitialized string offset: 0 in E:\program file\program\xampp\htdocs\QMS\admin\function.php on line 13

Notice: Uninitialized string offset: 1 in E:\progrram file\program\xampp\htdocs\QMS\admin\function.php on line 14

thanks in advance.

  • 写回答

2条回答 默认 最新

  • duancai7568 2015-09-06 09:08
    关注

    As I said, id="question[]" and id="question" are different ids. If you want to send items as an array you should use name attribute with []:

    <input type="text" placeholder="write your Question" name="question[]"  value="" />
    <input type="text" placeholder="write your Question" name="question[]"  value="" />
    

    jquery:

    // select all fields which names start with "question"
    {Question:$("[name^='question']").serialize()} 
    

    or even class:

    <input type="text" placeholder="write your Question" value="" class="question" />
    <input type="text" placeholder="write your Question" value="" class="question" />
    

    jquery:

    {Question:$(".question").serialize()}
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 C++ 头文件/宏冲突问题解决
  • ¥15 用comsol模拟大气湍流通过底部加热(温度不同)的腔体
  • ¥50 安卓adb backup备份子用户应用数据失败
  • ¥20 有人能用聚类分析帮我分析一下文本内容嘛
  • ¥15 请问Lammps做复合材料拉伸模拟,应力应变曲线问题
  • ¥30 python代码,帮调试
  • ¥15 #MATLAB仿真#车辆换道路径规划
  • ¥15 java 操作 elasticsearch 8.1 实现 索引的重建
  • ¥15 数据可视化Python
  • ¥15 要给毕业设计添加扫码登录的功能!!有偿