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 delta降尺度计算的一些细节,有偿
  • ¥15 Arduino红外遥控代码有问题
  • ¥15 数值计算离散正交多项式
  • ¥30 数值计算均差系数编程
  • ¥15 redis-full-check比较 两个集群的数据出错
  • ¥15 Matlab编程问题
  • ¥15 训练的多模态特征融合模型准确度很低怎么办
  • ¥15 kylin启动报错log4j类冲突
  • ¥15 超声波模块测距控制点灯,灯的闪烁很不稳定,经过调试发现测的距离偏大
  • ¥15 import arcpy出现importing _arcgisscripting 找不到相关程序