0
所以我有一箇中繼器,包含:JavaScript的一箇中繼器中
<table>
<tr>
<td>
<div class="divStyle">
<asp:CheckBox ID="cbSelection" runat="server" AutoPostBack="true"/>
</div>
<div class="divStyle">
<asp:Literal ID="ltlName" runat="server"></asp:Literal>
</div>
<div style="float:left; width:110px; margin-right:13px;">
<asp:DropDownList ID="ddlMode" runat="server"></asp:DropDownList>
</div>
<div style="float:left; width:110px;">
<asp:DropDownList ID="ddlQuantity" runat="server"
onChange="javascript:CheckPostBack();"></asp:DropDownList>
</div>
</td>
</tr>
我想要做的是:每個drodDown項目改變時 ,我檢查複選框被檢查,如果是這樣,我在後面的代碼中執行一個方法。
,所以我創建了下面的JavaScript:
<script>
function CheckPostBack() {
var checkElt = document.getElementById(GetCheckBoxClientID());
if (checkElt != null) {
alert($(checkElt).prop('checked'));
if ($(checkElt).prop('checked')) {
var hdnBtn = document.getElementById(GetHiddenBtnClientID());
hdnBtn.click();
}
}
}
hdnBtn是我用火回傳, GetCheckBoxClientID和GetHiddenBtnClientID是對碼方式按鈕後面注入的onPageLoad這樣我就可以得到複選框和HiddenButton的相應ID。
問題在於這種方法不起作用,因爲所有項目的方法都是相同的,所以每個測試都是從中繼器的第一個項目中爲checkBox完成的。