2012-07-11 211 views
-1

我正在寫一個Perl CGI腳本。如何在選擇單選按鈕後啓用提交按鈕?

首先,提交按鈕被禁用,當任何單選按鈕被選中時,它應該被啓用。每個對應的行(同名)都有一個單選按鈕。

+3

這不是perl/cgi的問題。但是[啓用/禁用基於單選按鈕的提交按鈕](http://stackoverflow.com/questions/5818415/enable-disable-submit-button-based-on-radio-buttons)可能有所幫助。 – Kenosis 2012-07-11 14:53:02

+0

是啊,你是對的@Kenosis,但事情是,我正在用Perl/CGI做這件事,你也可以使用其他語言。 – Shaggy 2012-07-12 05:10:08

回答

2

這更可能是一個JavaScript問題,除非你想重新加載頁面,啓用提交按鈕。但你可以指定 CGI中的JavaScript事件。

對於收音機組來說,這只是一個小技巧。由於radio_group子允許每個項目的屬性,所以您只需爲每個選擇指定相同的事件。

my @values = qw<eenie meenie minie>; 
my $enableSubmit 
    = { -onClick => q[document.getElementById('mySubmitButton').disabled = false;] } 
    ; 
print CGI->radio_group(
     -name  => 'group_name' 
    , -values  => \@values 
    , -default => 'meenie' 
    , -linebreak => 'true' 
    , -labels  => { map { $_ => ucfirst } @values } 
    , -attributes => { map { $_ => $enableSubmit } @values } 
    ); 
+0

這很簡單,所以+1。但我想我仍然更喜歡將該HTML/JS寫出來。你自己寫的CGI方法有什麼優勢嗎? – simbabque 2012-07-11 15:28:37

+1

只有CGI具有非常積木式的感覺。在我以前的工作中,我們曾使用Template Toolkit來爲通過的CGI塊進行一些自定義。使用CGI很容易獲得基本頁面並運行。使用TT(以及我們的mod)很容易獲得一個複雜的頁面並運行。 – Axeman 2012-07-11 15:50:14

+0

謝謝@Axeman :) !!!乾杯!!。 – Shaggy 2012-07-12 05:41:43

相關問題