我有一个下拉菜单。有产品类型。产品类型具有关联值(来自下拉列表)值对应于机器组。
因此每个选项应该有三个变量 - 机器名称,值,机器组。
我可以获取机器名称,我可以获取机器值(并在不同的字段中显示)...我无法弄清楚的是如何将值更改为机器组。
jQuery('#MachineName').bind('change', function()
{
//get selected value from drop down;
var selectedValue = jQuery("#MachineName").val();
//populate a text field with the selected drop down value
jQuery("#MachineValue").val(selectedValue);
我想要做的是保留MachineValue,然后使用已排序的MachineGroup填充另一个文本字段
我一直试图通过类似
的方式来运行它 switch(jQuery(this).val()){
case "236" : newVal = "8";
break;
但是我不想“改变”我想要做的“if then”类型过滤器的值,所以可能是这样的:
'236' => "8", '237' => "5",
我只是不知道如何正确地说“基于MachineValue分配MachineGroup”(然后让它填充不同的文本字段)
最后我会有三个字段。下拉,MachineValue和MachineGroup。下拉和值完成,我只需要做Group。 (我可以根据MachineName对Group进行排序......只是不确定哪个会更容易)
答案 0 :(得分:0)
客户端最简单的方法是让服务器向标记添加一些额外的data-
属性。 jQuery.data()
可以很容易地检索这些内容。
HTML:
<option value="5" data-group="foo" data-name="Bar">Bar</option>
JS:
$('select').change(function(){
var $sel=$(this).find('option:selected');
var machineGroup=$sel.data('group');
var machineName=$sel.data('name');
var value= $sel.val()// or $(this).val();
});
API(在第一系列示例下面阅读,功能不在原始API中)