Javascript listview如果选中了复选框并从下拉列表中选择了Value=x,则报警+取消选中
在aspx页面中,我试图验证用户何时选中复选框,如果同一行的select值具有特定值,则默认值将触发警报消息并取消选中复选框。我希望在javascript中实现这一点,以避免回发,但如果可能的话,不使用jqueryJavascript listview如果选中了复选框并从下拉列表中选择了Value=x,则报警+取消选中,javascript,asp.net,checkbox,Javascript,Asp.net,Checkbox,在aspx页面中,我试图验证用户何时选中复选框,如果同一行的select值具有特定值,则默认值将触发警报消息并取消选中复选框。我希望在javascript中实现这一点,以避免回发,但如果可能的话,不使用jquery <asp:ListView ID="lstView_retrievedIPPhones" runat="server" OnDataBound="lstView_retrievedIPPhones_DataBound" OnItemDataBound="lstView_retr
<asp:ListView ID="lstView_retrievedIPPhones" runat="server" OnDataBound="lstView_retrievedIPPhones_DataBound" OnItemDataBound="lstView_retrievedIPPhones_ItemDataBound">
<LayoutTemplate>
<table id="tbl1" runat="server" class="bordered">
<tr id="tr1" runat="server">
<th id="th1" runat="server"><asp:CheckBox ID="chkbox_checkAllRows" runat="server" OnClick="javascript:ToogleCheckAll(this.id)"/></th>
<th id="th9" runat="server">Sites</th>
<th id="th8" runat="server">Result</th>
</tr>
<tr id="ItemPlaceholder" runat="server">
</tr>
</table>
</LayoutTemplate>
<ItemTemplate>
<tr>
<td><asp:CheckBox ID="chkbox_toConfigure" runat="server" OnClick="javascript:btnclick()" /></td>
<td>
<asp:DropDownList ID="dpdown_Site" runat="server"></asp:DropDownList>
</td>
<td><asp:Image ID="imgResultLastOp" tooltip= "" runat="server" /></td>
</tr>
</ItemTemplate>
<EmptyDataTemplate></EmptyDataTemplate>
</asp:ListView>
在上面的代码中,当单击chkbox_进行配置时,我想验证DropDownList selectedvalue是否不是默认值
非常感谢您的帮助。如果您知道这里的默认下拉列表项的值,例如-1,那么您可以选中单击复选框并提醒用户从下拉列表中选择另一项: 在ending ItemTemplate标记之前添加此代码:
我最终完成了以下代码:
<asp:CheckBox ID="chkbox_toConfigure" runat="server" OnClick='<%# "javascript:CheckSelectedItem(this.id," + ((ListViewDataItem)Container).FindControl("dpdown_Site").ClientID + ");" %>'/>
进入我的javascript部分:
function CheckSelectedItem(checkboxID, dropdown) {
var checkbox = document.getElementById(checkboxID);
var dropdownValue = dropdown.options[dropdown.selectedIndex].text;
if (dropdownValue == "<>") {
alert("Please select a valid value");
checkbox.checked = false;
}
}
嗨,乌米尔,谢谢你的回答。非常感谢。在将代码插入my时,我遇到以下错误:“dpdown_站点”的名称在当前上下文中不存在对不起,您可以在repeater中执行此操作,在这里您可以使用,我已编辑了答案。非常感谢您的回答!它实际上工作得很好。我想问一下,如果我想把它放在我页面顶部的全局javascript部分,该怎么办?我在单击复选框时执行以下函数,并尝试了打击,但没有成功:函数checkSelectedItemChid{var ddl=document.getElementById;var ddlValue=ddl.options[ddl.selectedIndex].value;如果ddlValue==Alerts,请为IP电话选择一个站点;}您只需在此处创建一个函数,然后在onclick中,您必须为复选框和下拉列表传递ID,然后从参数中使用这些ID并删除以下内容:嗨,抱歉,我无法使其工作:javascript:ToogleCheckAllthis.ID,给我一个错误:服务器标记的格式不正确。
function CheckSelectedItem(checkboxID, dropdown) {
var checkbox = document.getElementById(checkboxID);
var dropdownValue = dropdown.options[dropdown.selectedIndex].text;
if (dropdownValue == "<>") {
alert("Please select a valid value");
checkbox.checked = false;
}
}