2013-06-06 4 views
0

Итак, у меня есть кнопка в моем CGI Perl. При нажатии этой кнопки мне нужно назначить действие в perl CGI, нажав эту кнопку. Новая текстовая область должна открыться с указанной шириной на той же странице с помощью кнопки отправки. Пожалуйста, помогите мне, как я могу продолжить. Вот код, который на самом деле не работает для меня. При нажатии на кнопку отправки, я что отправить сообщение на электронный идентификаторКак назначить действие кнопке в perl cgi?

Здесь я печатаю кнопку

print button('email',"email me","reqts()"); 

Здесь представлен opentextarea подпрограмму

sub reqts { 

    print "<p><em>Enter your Message here</em><br>"; 
    print textarea(-name=>'Comments', 
         -rows=>10, 
         -columns=>50); 
    print submit('Action','Send'); 

} 

При нажатии на эту кнопку подпрограммой не вызывается.

Эта кнопка находится на HTML форме в другой подпрограмме

sub actions { 
print 
    start_html(), 
    start_form(-action => 'com.pl'), 
    submit(-name => 'submit', -value => 'View com.pl'), 
    end_form, 
    print button('email',"email me","reqts()"), # this is the button 
    start_form(-action => 'about.pl'), 
    submit(-name => 'submit', -value => 'About Us'); 
    end_form, 
    end_html; 
} 
+1

Ввод необработанного HTML в ваш код Perl - ужасная идея. Использование функций генерации HTML из CGI.pm - тоже довольно плохая идея. Вы должны посмотреть на систему шаблонов (например, Template Toolkit). –

+0

Можете ли вы указать мне на какие-либо ссылки, которые говорят об этом? – mac

+1

http://www.template-toolkit.org/, http://shop.oreilly.com/product/9780596004767.do (у меня есть небольшой финансовый интерес к этому), https://metacpan.org/module/Template :: Toolkit –

ответ

1

Атрибут onClick (третий аргумент button) должен быть функцией JavaScript, Perl, не функция. Вы должны изучить, как работают CGI и веб-страницы.

Смежные вопросы