javascript – Jquery – 使用HTML:选中以获取具有相同名称的数组

我在HTML中有这个选择输入

                <select class="" id="countries" name="Country">
                    <option value="AL">
                        Albania
                    </option>
                    <option value="HR">
                        Croatia
                    </option>
                    <option value="BG">
                        Bulgaria
                    </option>
                    <option value="MK">
                        Macedonia
                    </option>
                    <option value="MT">
                        Malta
                    </option>
                    <option value="MD">
                        Moldova
                    </option>
                    <option value="RO">
                        Romania
                    </option>
                    <option value="RS">
                        Serbia
                    </option>
                    <option value="SI">
                        Slovenia
                    </option>
                </select>

在Jquery中,我有与此选择值同名的数组.数组充满了无关的数据.

var Albania = [];
var Croatia = [];
var Bulgaria= [];
...

根据选择的国家/地区,应使用具有相同国家/地区名称的阵列填充另一个选择输入.另一个选择是#cepsp

$( "#countries").change(function() {
$('#cepsp').empty();
var option = '';
for (var tt=0;tt<Albania.length;tt++)
{option += '<option value="'+Albania[tt]+'">'+Albania[tt]+'</option>';}
$('#cepsp').append(option);
});

请注意我在Jquery中如何使用Albania数组,这很好用.但我也希望这个也适用于其他国家.
我试过了:

$( "#cepsp option:selected" ).text()[tt]

但当然这永远不会奏效.

如何将所选输入的文本传输到变量名称?

解决方法:

在不修改数组结构的情况下,您可以尝试使用eval指令将一些“变量名称作为变量”行为用于您的目的.更准确地说,eval函数计算可能包含变量的表达式和/或指令,例如,您可以定义两个变量var a = 1 var b = 2并运行eval(“a b”)将导致3.

JS

var Albania = ["ALBANIA", "ALBANIA2"];
var Croatia = ["CROATIA", "CROATIE2"];
var Bulgaria= ["BULGARIA", "BULGARIA2"];

$( "#countries").change(function() 
{
  $('#cepsp').empty();
  var option = '';
  var name = $("#countries option:selected").text();
  for (var tt=0;tt<eval(name).length;tt++)
  {
    option += '<option value="'+eval(name)[tt]+'">'+eval(name)[tt]+'</option>';
  }
  $('#cepsp').append(option);
});

相关文章

1.第一步 设置响应头 header(&#39;Access-Control-Allow...
$.inArray()方法介绍 $.inArray()函数用于在数组中搜索指定的...
jquery.serializejson.min.js的妙用 关于这个jquery.seriali...
JS 将form表单数据快速转化为object对象(json对象) jaymou...
jQuery插件之jquery.spinner数字智能增减插件 参考地址:http...