Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/79.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 用js中的另一个组合值填充组合框值_Javascript_Jquery_Combobox - Fatal编程技术网

Javascript 用js中的另一个组合值填充组合框值

Javascript 用js中的另一个组合值填充组合框值,javascript,jquery,combobox,Javascript,Jquery,Combobox,我有两个combobox。我想在更改第一个combobox值的基础上设置第二个combobox值。例如,如果我为第一个设置了三个值(1,2,3),然后选择1,我将使用值(11,12,13)填充第二个combobox,其他值也是如此。我可以在php中进行设置,但不知道如何在js或jquery中进行设置。谢谢以下是您可以做到的方法: JavaScript var first = document.getElementById('select-input'), second = documen

我有两个combobox。我想在更改第一个combobox值的基础上设置第二个combobox值。例如,如果我为第一个设置了三个值(1,2,3),然后选择1,我将使用值(11,12,13)填充第二个combobox,其他值也是如此。我可以在php中进行设置,但不知道如何在js或jquery中进行设置。谢谢以下是您可以做到的方法:

JavaScript

var first = document.getElementById('select-input'),
    second = document.getElementById('second-select-input');

first.onchange = function (e) {
  var val = e.target.value;
  empty(second);
  for (var i = 0; i < 3; i += 1) {
    addOption(val + '' + (i + 1), second);
  }
};

function empty(select) {
  select.innerHTML = '';
}

function addOption(val, select) {
  var option = document.createElement('option');
  option.value = val;
  option.innerHTML = val;
  select.appendChild(option);
}
var first=document.getElementById('select-input'),
second=document.getElementById('second-select-input');
first.onchange=函数(e){
var val=e.目标值;
空(秒);
对于(变量i=0;i<3;i+=1){
addOption(val+“”+(i+1),秒);
}
};
函数为空(选择){
select.innerHTML='';
}
功能添加选项(val,选择){
var option=document.createElement('option');
option.value=val;
option.innerHTML=val;
选择.appendChild(选项);
}
HTML

<select id="select-input">
  <option value="1">1</option>
  <option value="2">2</option>
  <option value="3">3</option>
</select>
<select id="second-select-input">
</select>

1.
2.
3.

以下是如何做到这一点:

JavaScript

var first = document.getElementById('select-input'),
    second = document.getElementById('second-select-input');

first.onchange = function (e) {
  var val = e.target.value;
  empty(second);
  for (var i = 0; i < 3; i += 1) {
    addOption(val + '' + (i + 1), second);
  }
};

function empty(select) {
  select.innerHTML = '';
}

function addOption(val, select) {
  var option = document.createElement('option');
  option.value = val;
  option.innerHTML = val;
  select.appendChild(option);
}
var first=document.getElementById('select-input'),
second=document.getElementById('second-select-input');
first.onchange=函数(e){
var val=e.目标值;
空(秒);
对于(变量i=0;i<3;i+=1){
addOption(val+“”+(i+1),秒);
}
};
函数为空(选择){
select.innerHTML='';
}
功能添加选项(val,选择){
var option=document.createElement('option');
option.value=val;
option.innerHTML=val;
选择.appendChild(选项);
}
HTML

<select id="select-input">
  <option value="1">1</option>
  <option value="2">2</option>
  <option value="3">3</option>
</select>
<select id="second-select-input">
</select>

1.
2.
3.

感谢您的重播。至于整数值,它可以工作,但我如何设置字符串值,如(“this is one”、“this is seond”)?希望您也能给出一些很好的解决方案。对于第二个组合值,将类似于
1=>'one this'、'seond one'
,对于
2=>'UK',“US”
等。第二个组合上的字符串值不同,而第一个组合上的字符串值相同。明白了吗?请重构我的示例并达到您想要的效果。感谢重播。至于整数值,它可以工作,但我如何设置字符串值,如(“这是一个”,“这是一个”)?希望你也能给出一些很好的解决方案。对于第二个组合值将类似于
1=>'one this','seond one'
,对于
2=>'UK','US'
等。第二个组合上的字符串值不同,而第一个组合上的值相同。明白了吗?请重构我的示例并达到你想要的效果。