我想使用AjaxToolKit的dropdownlistextender構造下拉列表。 我有以下的標記:如何使用Dropdown Extender觸發OnSelectedIndexChanged事件
<asp:Label ID="ddTest" runat="server" Text="Transactions" Width="300px" BorderColor="#C0C0C0" CssClass="selecter"/>
<ajaxToolkit:DropDownExtender runat="server" ID="ddeSections"
TargetControlID="ddTest" DropDownControlID="panelItems" HighlightBackColor="Silver"
DropArrowBackColor="white" HighlightBorderColor="Silver"/>
及以下的 「名單」 的項目:
<table runat="server" id="ctlOptions" class="options" cellspacing="2" cellpadding="2" border="1">
<tr><td class="item" onmouseover="mouseOver(this)" onmouseout="mouseOut(this)" onclick="clickIt(this)">Transactions</td></tr>
<tr><td class="item" onmouseover="mouseOver(this)" onmouseout="mouseOut(this)" onclick="clickIt(this)">The second option</td></tr>
<tr><td class="item" onmouseover="mouseOver(this)" onmouseout="mouseOut(this)" onclick="clickIt(this)">The third option</td></tr>
<tr><td class="item" onmouseover="mouseOver(this)" onmouseout="mouseOut(this)" onclick="clickIt(this)">The fourth option</td></tr>
<tr><td class="item" onmouseover="mouseOver(this)" onmouseout="mouseOut(this)" onclick="clickIt(this)">The fifth option</td></tr>
</table>
我的JavaScript看起來像這樣:
function mouseOver(obj) {
if (obj) obj.className = 'itemOver';
}
function mouseOut(obj) {
if (obj) obj.className = 'item';
}
其中項目和itemOver是適當樣式的CSS類。 問題是我想要我的onClick點擊事件觸發服務器上的SelectedIndexChanged -type事件。 我曾嘗試使用此功能:
function clickIt(obj) {
var ddTest = document.getElementById("ctl00_ContentPlaceHolder1_ddTest");
var selVal = '';
if (ddTest) {
selVal = obj.firstChild.nodeValue;
ddTest.firstChild.nodeValue = selVal;
__doPostBack('<%=ddSections.ClientID %>', '');
}
}
ddSections是asp:Dropdown
其OnSelectedIndexChanged事件我試圖觸發。
這會觸發頁面級回發,但不會觸發ddSections_SelectedIndexChanged服務器端方法,我想要觸發。順便說一下,ddSections將被隱藏。
請您提供一些建議。 我花了三天的時間試圖找出這個問題,並且空手而歸。 爲了便於閱讀,請隨意重新格式化。 在此先感謝。