Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/90.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在下拉列表的更改事件中调用javascript函数_Javascript_Html - Fatal编程技术网

在下拉列表的更改事件中调用javascript函数

在下拉列表的更改事件中调用javascript函数,javascript,html,Javascript,Html,我想在下拉列表中的值更改时调用javascript函数。我不想硬编码下拉列表id 因此不使用document.getElementById 我的代码: <select id ="ddl" name="ddl" onmousedown="this.value='';" onchange="jsFunction(this.value);"> <option value='1'>One</option> <option value='2'>Two

我想在下拉列表中的值更改时调用javascript函数。我不想硬编码下拉列表id

因此不使用
document.getElementById

我的代码:

<select id ="ddl" name="ddl" onmousedown="this.value='';" onchange="jsFunction(this.value);">
  <option value='1'>One</option>
  <option value='2'>Two</option>
  <option value='3'>Three</option>
</select>

function jsFunction(value)
{
    alert(value);
}

一个
两个
三
函数jsFunction(值)
{
警报(值);
}
这是一个错误
ReferenceError:jsFunction未定义


Fiddle:

我不知道你为什么需要这个
onmousedown
事件,但是你要做的是把你的功能放在实际使用之上。请看下面的snipplet:


函数jsFunction(值)
{
警报(值);
}
一个
两个
三

jsFunction没有很好地关闭。改为:

jsFunction = function(value)
{
    alert(value);
}

不要使用全局变量和函数,将其更改为

您的代码工作正常,必须在DOM就绪之前声明javscript方法

使用jQuery

 $("#ddl").change(function () {
                alert($(this).val());
            });

你只要试试这个,它太容易了

 <script>

  $("#YourDropDownId").change(function () {
            alert($("#YourDropDownId").val());
        });

</script>

$(“#YourDropDownId”).change(函数(){
警报($(“#YourDropDownId”).val();
});

?您必须更新小提琴设置,将第二个下拉菜单更改为nowrap in以进行小提琴设置@达瓦尔马特克:是的+1!这并不能解决问题。你的回答给了我很好的建议。奇怪。。。确实如此。很抱歉;)它的工作原理是:如何获取文本?如果我也想获取所选内容的文本。我尝试了
$(this).text()
,但每次单击都会显示所有下拉列表中的所有文本。如何获取文本too@Unbreakable:
var e=document.getElementById(“YourDropDownId”);var str=e.options[e.selectedIndex].value