如何通过单击下拉选择标记中的选项来运行函数?

时间:2015-05-15 08:58:51

标签: javascript jquery html

我有一个下拉选择标记,如下所示:

<select id="thisDropDown" onChange="doSomething()">
        <option></option>
        <option>classif</option>
        <option>status</option>     
</select>

注意我正在使用onChange();

我需要的是能够在我的下拉菜单中重新单击一个选项,以便再次运行该功能(因为我可以更改影响运行此功能的结果的其他下拉菜单。)

我尝试了onselect()onclick(),但似乎都没有效果。我必须写一些脚本吗?我一直在网上看,但似乎无法找到可行的东西。

提前致谢,对不起,如果之前已经提出类似问题,

2 个答案:

答案 0 :(得分:3)

我们可以实现这一点,但需要根据浏览器进行微调:

JSFiddle链接https://jsfiddle.net/0kxe6br7/2/

var dom = "select#thisDropDown";
var is_firefox = navigator.userAgent.toLowerCase().indexOf('firefox') > -1;
if(is_firefox){
dom+=" option";
}

$(dom).on("click",function(event) {
  console.log($(event.currentTarget).val());
});

答案 1 :(得分:1)

Hej,

可以使用jquery

完成
DECLARE @table TABLE (id INT, Bucket INT, B1 INT, B2 INT, B3 INT, B4 INT)
INSERT INTO @table VALUES
(5,1,20,21,45,12),
(6,2,12,18,19,48),
(7,3,19,78,40,78),
(8,4,72,34,12,17)

SELECT rn AS [ROW],
VALUE AS [ColumnNumber],
orders AS [VALUE] 
FROM
(
SELECT ROW_NUMBER () OVER (ORDER BY id) AS rn,id, Bucket, B1 [1], B2 [2], B3 [3], B4 [4]
FROM @table
) AS t
UNPIVOT
(
    orders
    FOR VALUE IN([1], [2],[3],[4])
) AS pvt