在选择了选项时,我在页面上有几个选择对象需要相同类型的处理。所以,我想将Select Object(s)传递给一个通用函数,所以我只需要编写一次处理。我在onchange()事件中这样做,如下所示:
<select name="dropDown1" id="dropDown1" onchange="processData(this);">
我现在想知道的是,如何从作为参数传递的Object中获取以下内容:
function processData(obj) {
// Need to access .index(), .val() and .text() of the obj param
}
这是一个完整的模型:
<!doctype html>
<html>
<head>
<title></title>
<script src="http://code.jquery.com/jquery-1.10.2.min.js"></script>
<script>
function processData(obj) {
// Need to access .index(), .val() and .text() of the obj param
// Like the following:
// var indx = $("select[name='dropDown1'] option:selected").index();
// ...
}
</script>
</head>
<body>
<div id="container" class="container">
<select name="dropDown1" id="dropDown1" onchange="processData(this);">
<option value="1">Red</option>
<option value="2">Green</option>
<option value="3">Blue</option>
</select>
</div>
</body>
</html>
感谢任何指导。
答案 0 :(得分:0)
非常简单:
var value = $(obj).val();
// or
var value = obj.value;
var text = $(obj).children('option:selected').text();
var index = $(obj).children('option:selected').index();
// or
var index = obj.selectedIndex;
但是如果您已经在使用jQuery,那么您还应该使用jQuery附加事件处理程序。