0

我编写了一个选择元素并分配了一个方法 searchFeeds

<select size="1" onchange="searchFeeds();">
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
</select>

我写了一个脚本标签

<script type="text/javascript">
          function searchFeeds(){
          console.log("current value is",$(this).val());
}

它给了我错误Uncaught TypeError: Cannot call method 'toLowerCase' of undefined 我想知道 $(this) 在这种情况下代表什么选择元素或其他东西?

4

4 回答 4

3

像这样更改html

 <select size="1" onchange="searchFeeds(this);">

然后将控制台日志更改为此

 function searchFeeds(elm) {
        console.log("current value is" + $(elm).val());
    }
于 2013-09-10T11:16:50.980 回答
1

您没有通过函数调用发送信息:试试这个,看看有什么不同。

<script type="text/javascript">
          function searchFeeds(x){
          console.log("current value is " + x);
}
</script>

<select size="1" onchange="searchFeeds(this.value);">
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
</select>
于 2013-09-10T11:25:02.370 回答
0

试试这个,更新你的函数调用

searchFeeds(this);
于 2013-09-10T11:16:40.783 回答
0

尝试$("select").val()改用,但您最好将 id 添加到您的选择和调用中$("#myselect").val()

于 2013-09-10T11:16:49.520 回答