[英]Disable radio button list item with Javascript
我試圖使用Java腳本從ASP RadioButtonList禁用單選按鈕。 這是我所擁有的:
<asp:RadioButton ID="rbPlanner" runat="server" onclick="deselectRadioListItem('P');" />
將此客戶端稱為javascript onClick ...
function deselectRadioListItem(radioValue) {
var clientID = ('<%= rblSummaryOptions.ClientID %>');
for (i = 0; i < '<%= rblSummaryOptions.Items.Count %>'; i++) {
if (document.getElementById(clientID + "_" + i.toString()).value == radioValue) {
(clientID + "_" + i.toString()).disabled === true;
}
else
{
(clientID + "_" + i.toString()).disabled === false;
}
}
}
一切似乎都正常工作(觸發,迭代,if語句起作用),但是,即使邏輯被點擊,單選按鈕控件也不會被禁用。 我想念什么? 非常感謝您的幫助,謝謝!
===
運算符用於比較。 您需要使用=
。
function deselectRadioListItem(radioValue) {
var clientID = ('<%= rblSummaryOptions.ClientID %>');
for (i = 0; i < '<%= rblSummaryOptions.Items.Count %>'; i++) {
if (document.getElementById(clientID + "_" + i.toString()).value == radioValue) {
document.getElementById(clientID + "_" + i.toString()).disabled = true;
}
else
{
document.getElementById(clientID + "_" + i.toString()).disabled = false;
}
}
}
或清理一點:
function deselectRadioListItem(radioValue) {
var clientID = ('<%= rblSummaryOptions.ClientID %>');
for (i = 0; i < '<%= rblSummaryOptions.Items.Count %>'; i++) {
var objCurrentRdo = document.getElementById(clientID + "_" + i.toString());
if (objCurrentRdo.value == radioValue)
objCurrentRdo.disabled = true;
else
objCurrentRdo.disabled = false;
}
}
其他信息:檢查出比較操作上MDN。
這肯定是錯誤的。
(clientID + "_" + i.toString()).disabled === true;
也許你會打字
document.getElementById(clientID + "_" + i.toString()).disabled = true;
甚至更好
function deselectRadioListItem(radioValue) {
var clientID = ('<%= rblSummaryOptions.ClientID %>');
for (i = 0; i < <%= rblSummaryOptions.Items.Count %>; i++) {
document.getElementById(clientID + "_" + i).disabled =
document.getElementById(clientID + "_" + i).value == radioValue;
}
}
你這里有一些錯誤...
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.