0

name 属性を使用したことはありませんが、MVC では必須のように見えます。

私は持っている

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

JS

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

結果は alert("testname") になるはずです

シンプルですが、私は一度も使用したことがなく、誰もが値またはインデックスの取得について尋ねているため、Googleで見つけるのは困難です:D

4

1 に答える 1

5

問題は、 を呼び出す方法が原因で、DOM 要素ではなく をAlert参照thisすることです。window引数として関数に渡すことができます:

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

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

HTML 属性を使用するよりも、イベント ハンドラーをアタッチするためのより良い方法があります。quirksmode.org のイベント処理に関するさまざまな記事を読むことをお勧めします。

また、仕組みthisを理解していることを確認してください

もちろん、あなたも書くことができます

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

jQuery を使用している場合は、jQuery を使用してイベント ハンドラーをバインドする必要があります。例えば:

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

jQuery チュートリアルを見て、時間を取ってAPI ドキュメントに目を通してください。それだけの価値があります。

于 2012-05-28T01:30:51.033 に答える