更改选择框时需要获取两个相对值。我有一个多选框,其中包含一些用于显示用户资源的选项。一些选项代表父资源。因此,我需要获取所选值以及是否为父级。
<select class="filtered remaining" onchange="check_options(this)" id="multi-select-left" multiple="multiple" style="height: 15em;">
<option parent="0" value="1">User</option>
<option parent="1" value="2">User-Login</option>
<option parent="1" value="8">User-Logout</option>
<option parent="1" value="11">User-Register</option>
<option parent="0" value="3">Backend</option>
<option parent="0" value="4">Settings</option>
<option parent="4" value="5">Settings-Edit</option>
<option parent="0" value="6">Category</option>
<option parent="6" value="7">Category-add</option>
<option parent="0" value="12">logger</option>
<option parent="0" value="13">brands</option>
<option parent="0" value="14">User-Role</option>
</select>
无论如何都会在选择选项时获得parent="0"
值。我已经尝试了十几件事,没有任何效果。 :(
这是我的check_options方法
function check_options(val)
{
var test = $(val).children("option").filter("parent").text();
alert(test);
}
答案 0 :(得分:4)
试试这段代码:
JS小提琴:http://jsfiddle.net/reigel/frFa9/
$('#multi-select-left').change( function() {
var $t = $(this);
var tVal = $t.val();
var tParent = $t.find('option:selected').attr('parent');
alert( 'tVal: ' + tVal);
alert( 'tParent : ' + tParent );
});
答案 1 :(得分:0)
<option value="0_1">User</option>
并在需要时将其爆炸
答案 2 :(得分:0)
<script>
function check_options()
{
var x=document.getElementById("multi-select-left");
for (var i = 0; i < x.options.length; i++)
{
if(x.options[i].selected ==true)
{
// alert(x.options[i].value);
alert(x.options[i].getAttribute('parent'));
}
}
}
</script>
<select class="filtered remaining" onchange="check_options();" id="multi-select-left" multiple="multiple" style="height: 15em;">
<option parent="0" value="1">User</option>
<option parent="1" value="2">User-Login</option>
<option parent="1" value="8">User-Logout</option>
<option parent="1" value="11">User-Register</option>
<option parent="0" value="3">Backend</option>
<option parent="0" value="4">Settings</option>
<option parent="4" value="5">Settings-Edit</option>
<option parent="0" value="6">Category</option>
<option parent="6" value="7">Category-add</option>
<option parent="0" value="12">logger</option>
<option parent="0" value="13">brands</option>
<option parent="0" value="14">User-Role</option>
</select>
答案 3 :(得分:-1)
您可以通过此脚本获取所选选项的父值:
function check_options(val)
{
var test = $(val).find(":selected").attr("parent").value;
alert(test);
}