获取选择框的名称属性

Get name attribute of selectbox

本文关键字:属性 选择 获取      更新时间:2023-09-26

我从未使用过name属性,但在MVC中看起来我必须使用。

我有

<select name="testname" onChange="Alert()">
<option value="8">Test</option>
</select>

.JS

function Alert(){
alert(this.name);
}

结果应该是警报("测试名称")

它很简单,但我从未使用过,而且在谷歌上很难找到,因为每个人都询问获取值或索引:D

问题是由于你称呼Alert的方式,this指的是window,而不是DOM元素。您可以将其作为参数传递给函数:

<select name="testname" onchange="Alert(this)">

function Alert(element){
    alert(element.name);
}

比使用 HTML 属性更好的方法来附加事件处理程序。我建议阅读有关 quirksmode.org 事件处理的各种文章。

还要确保您了解this的工作原理。

当然你也可以写

<select name="testname" onchange="alert(this.name)">

如果您使用的是jQuery,则应使用它来绑定事件处理程序。例如:

$('select[name=testname]').change(function() {
    alert(this.name);
});

看看jQuery教程,花时间浏览API文档,这是值得的。