为什么我没有通过Select获取onChange的值?

时间:2010-08-30 02:19:52

标签: javascript html onchange

测试表单的一部分。所以,现在我只想提醒用户选择的内容:

JS:

function getData(title)
{
     alert(title);
}

PHP生成的HTML:

<select name="currentList" onChange="getData(this);">
     <option value="hat">Hat</option>
     <option value="shirt">Shirt</option>
     <option value="pants">Pants</option>
</select>

当我更改值时,我会收到警告:

[object HTMLSelectElement]

4 个答案:

答案 0 :(得分:19)

尝试alert(this.value)

答案 1 :(得分:12)

使用this,您将HTML select element传递给函数,而不是所选选项的值。要获取所选选项的值,您需要从options selectedIndex获取所选选项,然后获取其value。简而言之:

function getData(dropdown) {
    var value = dropdown.options[dropdown.selectedIndex].value;
    alert(value);
}

答案 2 :(得分:0)

使用jQuery,只要将id =“currentList”添加到选择列表中,就可以使用alert($(“#currentList”)。val());来简洁。这样您就不必将“this”传递给onchange函数。

答案 3 :(得分:-1)

你可以尝试

alert(title.value)