は私が含まれているが、イベントが発生ONCHANGEドロップダウンリスト際にイベントを発生するために、親スパンコントロールをしたいと思いますHTML要素、カスタム・クライアント・イベント
<span id="myControl">
<select id="myControl_select">
<option value=""></option>
<option value="1">Item 1</option>
<option value="2">Item 2</option>
</select>
</span>
次のようになりますHTMLを発する複合コントロールを持っています。これは複合コントロールですので、私は、このコントロールの消費者は、イベントハンドラ(私はonvaluechangedか何かと呼ばれるHTML属性を経由して期待していた)
Editted bobinceの提案を組み込むことを割り当てることができるように許可する必要があります。唯一の問題は、引数のパラメータが渡されていないことです。現在、「未定義」です。
<script>
window.onload = function() {
var objSelect = document.getElementById('myControl_select')
if (objSelect.attachEvent)
objSelect.attachEvent("onchange", myControl_ddlOnChange);
else if (objSelect.addEventListener)
objSelect.addEventListener("onchange", myControl_ddlOnChange, false);
}
function myControl_ddlOnChange()
{
//fire span on value changed event
var target= document.getElementById('mycontrol');
var handler= target.getAttribute('onvaluechanged');
var args = { text : 'Hi!', index : 0 }
if (handler)
new Function(handler).call(target, args);
}
function myControl_ValueChanged()
{
alert(arguments[0]);
}
</script>
<span id="myControl" onvaluechanged="myControl_ValueChanged();">
<select id="myControl_select">
<option value=""></option>
<option value="1">Item 1</option>
<option value="2">Item 2</option>
</select>
</span>
これはユーザーコントロールかサーバーコントロールですか? –
これは上記のhtmlマークアップを発行するサーバコントロールです – user62064