次の HTML と関数があるとします。
<input type="text" onfocus="TextBoxFocus()" id="txtName" />
.
function TextBoxFocus()
{
}
関数内から呼び出しテキストボックスのIDを取得することは可能ですか?
ありがとうケビン
次の HTML と関数があるとします。
<input type="text" onfocus="TextBoxFocus()" id="txtName" />
.
function TextBoxFocus()
{
}
関数内から呼び出しテキストボックスのIDを取得することは可能ですか?
ありがとうケビン
html を少し変更する
<input type="text" onfocus="TextBoxFocus(this)" id="txtName" />
そして、ここに行きます:
function TextBoxFocus(self) {
var id = self.id
}
this
ハンドラの引数として渡すだけです:
onfocus="TextBoxFocus(this)"
function TextBoxFocus(textbox)
{
}
このオブジェクトを渡します。下記参照、
//<!-- Passing this obj---v -->
<input type="text" onfocus="TextBoxFocus(this)" id="txtName" />
そしてスクリプトでは、
function TextBoxFocus(obj)
{
alert(obj.id);
}
私はJSFiddleを実行しましたが、これはうまくいくようです:
<input type="text" onFocus="onFocus(this)" />
多くのテキストボックスに使用したいと仮定すると、class
セレクターを提供しています
<input type="text" id="txtName1" class="someTextBox"/>
<input type="text" id="txtName2" class="someTextBox"/>
脚本
$(function(){
$(".someTextBox").focus(function(){
var txtID=$(this).attr("id");
alert(txtID);
});
});
Jsfiddle サンプル : http://jsfiddle.net/MLH4p/