2015-06-30 33 views
1

我使用下面的js來防止點擊某個單選按鈕。IE不能在單選按鈕上使用「return false」

它在Chrome中完全正常工作。

但在IE8上它仍然無法檢查,但默認值在單擊組中的其他收音機時消失。

$("body").on("change", ".readonly", function() { 
    return false; 
}); 

我該如何使收音機只讀,也可以在IE8上工作?

+0

不屬性「禁用」做你想做的事情? – TheBalco

+0

我仍然希望將數據提交給服務器。 ,如果我使用隱藏字段禁用。我必須編輯許多頁面。所以我試圖找到另一種方式。 – LLF

回答

2

<input type="radio" readonly />不起作用,但使用點擊確實可以派對。如果你有兩個電臺名稱相同,IE會但是仍然與此代碼

$("body").on("click", ".readonly", function (e) { 
 
     e.preventDefault(); 
 
    });
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script> 
 
<input name="rad" type="radio" class="readonly" /> 
 
<input name="rad" type="radio" checked class="readonly" />


這裏取消選中的一個,無論是一個解決方案:https://stackoverflow.com/a/5437904/295783

$(function() { 
 
    $(':radio:not(:checked)').attr('disabled', true); 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script> 
 
<input name="rad" type="radio" class="readonly" /> 
 
<input name="rad" type="radio" checked class="readonly" />

+0

如果你有兩個收音機,並且其中一個收音機已被檢查,這是行不通的。 檢查的那個將被取消選中。 – LLF

+0

查看更新的答案 – mplungjan

+1

感謝您的解答。 禁用未檢查一個是工作真的很好。 – LLF