-1

请不要介意我,我是javascript新手。我在一个 php 文件中创建了一个 html 表单,其中生成了单选按钮、复选框和跳转菜单等元素,并根据 javascript 中的单击功能给出了值。具有各自值的表单元素看起来很好,但我无法通过 php 检索动态表单元素的值。任何形式的帮助都将不胜感激,已经在这个问题上停留了很长一段时间,找不到问题的实际答案。代码如下:

     function addInput(divName) {

             var text=document.forms["newQuest"]["roptionName"].value;
             var newdiv = document.createElement('div');
             newdiv.innerHTML = text +  " <br><input type='radio' name='myInputs[]'>";
             document.getElementById(divName).appendChild(newdiv);


            var form_data = {
                action:"add_rad",
                val:text
            };
            $.ajax({
                    type: "GET",
                    url: "../scripts/addQuestion.php",
                    data: form_data,
                    success: function(result) 
                    {
                        alert(result);
                        //document.getElementById("subjects").innerHTML=result;

                    }
                });
     }

在 addQuestion.php 中: $array=$_GET['form_data'];

我总是在上面的语句中得到关于未定义索引的错误。

4

1 回答 1

0

要通过 ajax 发送表单数据,您必须对其进行序列化并将其添加到您的 ajax 请求中。像这样的东西:

formData = $('form').serialize();

如果要向其添加附加数据,则应该能够像这样附加它:

formdata.action = "add_rad";
...

你的ajax调用的其余部分似乎没问题

在服务器端,您从请求中获取变量,如下所示:

$myInputs = $_REQUEST['myInputs'];

但是,您应该确保数据存在于 array_key_exists 之类的东西中,这只是一个简单的例子......

于 2013-04-04T18:47:49.953 回答