0

我迷路了。首先,我在 php 中创建了一个数组(原因?将列的所有值获取到一个数组中,以供稍后使用)并像这样“保存”:

echo '<input type="hidden" name="hidden[]" id="hidden[]" value="'.$to_update.'">';

然后,我选择了一些值和字符,也是用 php 构建的。像这样:

echo '<option value="'. $id .'">'. $desc .'</option>';

获取的值是正确的,$id $desc并且$to_update具有我需要的值。

然后,在 php/html 我有这个代码:

 <select name="articulo" id="articulo" onchange="myFunc(this.value)">
 <input name="updated" id="updated" type="text"  />

所以,在js中调用的时候是这样的(同样的html,在body标签之后):

<script >
function myFunc(val) {
  var id = document.getElementById("updated");
  var valor = document.getElementsByName("hidden");
  id.value = valor[val].value;
}
</script>

因此,例如,如果在 select 是 1、2 和 3 值;一、二和三个选项,我想将名为更新的输入文本更改为另一个值,例如 a、b 和 c。

这是一种更好的方法,还是只是修复一些代码?

4

1 回答 1

1

我很幸运地解决了我的问题。

我在 PHP 中使用了一个推入数组:

echo "<script>
         var pausecontent = new Array();
         pausecontent.push('".$to_update."');
      </script>";

然后在 JavaScript 中获取/检索/访问数组,如下所示:

var valor = pausecontent[val - 1];
id.value = valor;

像魅力一样工作,无需另一个隐藏标签。

于 2017-05-17T15:27:09.303 回答