如何将值输入文本复制到多个/数组输入文本

时间:2013-05-02 11:42:33

标签: php javascript

我需要将输入文本复制到这样的数组:

如果输入为“12345”:

<input type="text" name="data1">

然后在文本输入(数组)中也写“12345”

<? foreach ($countries as $data2)
{
<input type="text" name="$data2['location'][]">
}

<script language="javascript">
function copy() 
{

document.form1.data2.value=document.form1.data1.value
}
</script>
<form action="" method="post" name="form1">
<input type="text" name="data1" onKeyUp="copy()"/>
<br /><br>

<input type="text" name="data2">
</form>

没问题......


但如果是这样的话:

<input type="text" name="data2[]">
<input type="text" name="data2[]">
<input type="text" name="data2[]">

OR在数组PHP中,如下所示:

<?php foreach ($countries as $data2): ?>
    <input type="text" name="<?php echo $data2['location'][] ?>" />
<?php endforeach ?>

不工作......


1 个答案:

答案 0 :(得分:0)

您似乎需要在正确的位置打开和关闭PHP标记。如果HTML输入控件的名称为$data2['location'][],请尝试以下操作:

<?php foreach ($countries as $data2): ?>
    <input type="text" name="<?php echo $data2['location'][] ?>" />
<?php endforeach ?>

所以,我已经在循环关键字(循环的开始和结束)之前和之后关闭了PHP模式。这意味着这些标签之外的所有内容都处于HTML模式,因此要获取控件的名称,我们需要再次打开标签。我选择使用<?php而不是<?,因为后者可以在某些服务器上关闭。但是,如果您不介意代码不可移植,可以坚持使用简短形式。

另请注意,我使用了更明确end关键字的冒号。这是在视图层中构造循环的流行方法;对于普通的控制器代码,我建议你坚持普通的支架。