我想知道腳本是否可以使用某種切換按鈕來啓用/禁用頁面上的所有輸入元素。啓用/禁用輸入元素的腳本?
我用Google搜索,但沒有發現任何東西,除了這個太有用了:
http://www.codetoad.com/javascript/enable_disable_form_element.asp ,但我不知道如何修改它的切換。
我想知道腳本是否可以使用某種切換按鈕來啓用/禁用頁面上的所有輸入元素。啓用/禁用輸入元素的腳本?
我用Google搜索,但沒有發現任何東西,除了這個太有用了:
http://www.codetoad.com/javascript/enable_disable_form_element.asp ,但我不知道如何修改它的切換。
的工作,例如:
$().ready(function() {
$('#clicker').click(function() {
$('input').each(function() {
if ($(this).attr('disabled')) {
$(this).removeAttr('disabled');
}
else {
$(this).attr({
'disabled': 'disabled'
});
}
});
});
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.6.2/jquery.min.js"></script>
<input type='text'></input>
<input type='text'></input>
<input type='text'></input>
<div id='clicker' style='background-color:#FF0000; height:40px; width:100px;'></div>
這裏來切換頁面上的所有輸入的功能:
function toggle_inputs() {
var inputs = document.getElementsByTagName('input');
for (var i = inputs.length, n = 0; n < i; n++) {
inputs[n].disabled = !inputs[n].disabled;
}
}
它通過使用logical NOT operator(驚歎號) ,它返回操作數的相反部分。例如,!true
將返回false
。因此,通過使用!inputs[n].disabled
,它將返回與當前設置相反的值,從而切換它。
如果你需要的代碼到Click事件綁定到按鈕:
document.getElementById('your_button_id').onclick = toggle_inputs;
您還可以使用addEventListener
,但看到鏈接的頁面以獲取更多信息,包括與Internet Explorer的兼容性。我上面給出的代碼應該可以在所有瀏覽器中工作,而不會有任何問題
謝謝你的代碼,我會仔細看看它。 – Charlie
http://code.google.com/p/getelementsbyclassname/
^^羅伯特·尼曼有一個 「獲得通過階級分子」 的劇本。基本上你只分配所有這些投入要素相同的類,然後像做:
//Collapse all the nodes
function collapseNodesByClass(theClass){
var nodes = getElementsByClassName(theClass);
for(i = 0; i < nodes.length; i++){
nodes[i].style.display='none';
}
}
這是我實際上目前使用的崩潰與一個給定的類名都的一段代碼(它使用我上面提到的腳本)。但無論如何,我認爲你問題的關鍵是能夠一次引用多個元素,這個腳本可以幫助你。
而且在你的問題的鏈接並沒有爲我工作:(
我修復了鏈接,並感謝您的代碼。如果我有更多的js問題,我會告訴你。 – Charlie
你的鏈接斷開 –
你可以使用jQuery嗎?可以用jQuery做心跳 – Mrchief
Need selection,textareas,buttons? – epascarello