2013-07-08 376 views
3

在我的安裝程序窗體中,我有一組複選框。 現在我想要另一個複選框,選中時將選中其他複選框選擇複選框

有誰知道如何實現這個?

感謝

回答

0

簡單的東西,如jQuery的:

<script> 
$(document).ready(function(){ 
    // On clicking the master, check all checkbox 
    $("#checkall").click(function() { 
     // find all checkboxes with the class 'checkboxes' 
     // and make it checked/unchecked to match the master checkbox 
     $('input[type="checkbox"].checkboxes') 
      .attr("checked", $(this).is(":checked")) 
     ; 
    }); 
}); 
</script> 

添加一個簡單的複選框來充當主啓用/禁用其餘

<input title="Check all" id="checkall" 
     type="checkbox" class="checkbox" value="1" 
/> 

<input class="checkboxes checkbox" type="checkbox" /> 
<input class="checkboxes checkbox" type="checkbox" /> 
<input class="checkboxes checkbox" type="checkbox" /> 
+0

感謝您的回覆 - 我是一個完整的新手,不理解您的代碼!我嘗試過,但它不會編譯。你可以請進一步解釋一下 – user1414413

+0

你需要看看jQuery庫,它會使任何javascrupt用法更容易爲新手! jquery.com – Andrew

+2

AFAIK,install4j不支持jquery的動作。 – skydvr

0

您可以使用一個簡單的JavaScript要做到這一點:

<div id="page"> 
<p> 
<input id="chkFile1" type="checkbox" title="File 1" />File 1</p> 
<p> 
<input id="chkFile2" type="checkbox" title="File 2" />File 2</p> 
<p> 
<input id="chkFile3" type="checkbox" title="File 3" />File 3</p> 
<p> 
<input id="chkFile4" type="checkbox" title="File 4" />File 4</p> 
<p> 
<input id="chkFile5" type="checkbox" title="File 5" />File 5</p> 
<p> 
<input id="chkAllFiles" type="checkbox" title="All Files" onchange="selectAllFiles(this.checked);" />All Files</p> 
</div> 

那麼腳本:

<script type="text/javascript"> 
    function selectAllFiles(c) { 
     for (i = 1; i <= 5; i++) { 
      document.getElementById('chkFile' + i).checked = c; 
     } 
    } 
</script> 
+0

感謝您的回覆,我在何處在Install4j IDE中輸入此代碼? – user1414413

+0

對不起。我不熟悉這個IDE。 –

+2

AFAIK,install4j在其操作中不支持JavaScript。 – skydvr

2

在您的複選框形式分量的「選擇腳本」屬性,添加以下代碼:

((JCheckBox)formEnvironment.getFormComponentById("123"). 
     getConfigurationObject()).setSelected(selected); 

其中「123」必須與的ID來代替應該選擇的另一個表單組件。

+0

是否有通過IDE設置ID的方法?除非我錯過了某些東西,否則使用該數字需要我先手動在生成的xml文件中找到該數字,並且在我看來,數字很容易通過對安裝程序的更改而改變。我嘗試命名該組件並使用該名稱,但那不起作用......謝謝。 – skydvr

+0

複選框的ID將永遠不會改變,但您可以手動分配一個複選框。當您調用表單組件的重命名操作時,在輸入對話框中有一個用於分配ID的複選框。自定義ID必須以字母開頭。 –