0

我想做的是,

我有一个代码,它通过 ajax 在按钮单击事件上生成 2 个文本框,其次数与按钮单击次数一样多。所以在单击提交按钮时,我如何识别每个文本框的文本框和 getvalue。

所以我想为每个文本框提供动态名称。在表单提交上我想获取每个文本框的值。

我能做这样的事吗

<input type="text" name="fname[]" value="Hello" />
<input type="text" name="fname[]" value="World" />

并在提交时获得价值

<?php
if(isset($_POST['txtfname[]'])){
    echo $_POST['txtfname[0]'];

}
?>

有人可以帮忙吗?

4

4 回答 4

1

值在$_POST['fname']-array 中。

意义:

$_POST['fname'][0]--> “你好”

$_POST['fname'][1]--> “世界”

于 2013-04-05T10:15:17.860 回答
0

在按照您所说的通过ajax创建文本框时,按照您所说的将新创建的按钮的名称作为数组提供。提交表单后,如果您print_r($_POST)可以看到包含提交的元素的所有值的已发布数组形式。

于 2013-04-05T10:15:10.463 回答
0

这可能是可能的,但以下可能是更好的方法。如果您生成每个输入,因此它们的名称采用以下格式:数字<input type="text" name="fname_0" value="value" />在哪里0,然后您可以使用此代码循环遍历每个输入并回显该值:

$prefix = "fname_";
foreach ($_POST as $post) {
    if (strncmp($post, $prefix, strlen($prefix))) {
        echo $post;
    }
}

编辑
或者,如果您将输入格式化为<input type="text" name="fname" value="value" />,它们将可以$_POST['fname']作为数组访问,因此您可以像这样回显每个输入(在您的 PHP 代码中):

foreach ($_POST['fname'] as $fname) {
    echo $fname;
}
于 2013-04-05T10:15:58.633 回答
0

在您的每个元素的 HTML 中放置

<input type="text" name="fname[]" value="value" />

value每个文本框的值在哪里。这会将每个文本框的所有值放在一个数组中。在转储所有输入值的代码中,您可以输入:

<?php
if(isset($_POST['fname'])){
    $array =  $_POST['fname'];
    var_dump($array)

}
?>
于 2013-04-05T10:20:47.603 回答