我想根据 filterToolbar 中的选定值过滤网格。
这是我的网格
<sjg:gridColumn name="assigned_to" index="assigned_user" key="assigned_user" title="Assigned To"
sortable="false"
searchtype="select"
searchoptions="{defaultSearch:'cn', dataUrl : '%{fillUser}',
dataEvents: [{ type: 'change' fn: function(elem) { myfunction(elem)}}]}"/>
问题是
1:如何从功能 myfunction(elem)的下拉列表中获取所选值,这是使用 dataEvents 触发的。
2: dataEvents 选项中的 elem 是什么?
答案 0 :(得分:1)
一个人通常使用名称event
或e
作为fn
函数参数的名称,因为参数为jQuery Event object。如果target
是选择的DOM元素,则最重要的是它的属性(参见here)。因此,您可以使用selectedIndex和options属性来获取有关所选选项的信息:
fn: function (e) {
var selectDOM = e.target,
selectedOptionDOM = selectDOM.options[selectDOM.selectedIndex];
alert("selected option has\n" +
"text=" + selectedOptionDOM.text +
"\nvalue=" + selectedOptionDOM.value);
}
或者,您可以使用jQuery获取选定的选项。 $(e.target).val()
提供所选选项的值,$(e.target).find(":selected").text()
为您提供文字:
fn: function (e) {
var $select = $(e.target);
alert("selected option has\n" +
"text=" + $select.find(":selected").text() +
"\nvalue=" + $select.val());
}