2013-08-19 3 views
1

У меня есть html-форма. когда нажата кнопка отправки, вызывается скрипт perl и данные формы передаются в perl-скрипт. форма содержит текстовое поле и кнопку отправки. кнопка submit также проверяет, содержит ли текстовое поле какое-либо значение или нет. и если он содержит ot, он отправляет форму еще, он предупреждает о сообщении. ниже приведен пример кода:как отключить кнопку отправки при нажатии и отправке данных формы в perl-скрипт?

<html> 
     <head> 
       <title>files move</title> 

       <script type="text/javascript"> 

        function check_filename() 
        { 
           if (!frm1.FileName.value) 
           { 
             alert ("No File is selected to Move"); 
             return false; 
           } 
           else 
          { 
             document.getElementById("btn_sbmt").disabled = 'true' 
             return true; 
          } 
        } 
       </script> 
     </head> 

    <body> 

       <form id="frm1" name="frm1" action="/cgi-bin/sample_move.pl" method="GET"> 

      <input type="text" name="FileName" id="FileName"> 
         <input type="submit" name="btn_sbmt" id="btn_sbmt" value="MOVE FILES" onclick="return check_filename();"> 

       </form> 
     </body> 
</html> 

, когда я нажимаю на кнопку отправки, я хочу 1 проверить, является ли текстовое поле содержит некоторое значение или нет. Если он содержит, то я хочу вызвать скрипт perl и отключить кнопку отправки, чтобы не нажимать кнопку отправки несколько раз. приведенный выше код проверяет, пусто ли текстовое поле или нет, и если оно не пустое, оно отключает кнопку отправки, но не передает форму в perl-скрипт. может ли кто-нибудь сказать, как это сделать?

ответ

0

добавить эту строку в еще части

document.getElementById("frm").submit(); 
+0

благодарит за ответ. но проблема не решена. он по-прежнему отключает кнопку отправки, но скрипт perl не получает вызов. – Rahul

1

Этот пример основан на вашем примере.

function check_filename() 
{ 
    if (!frm1.FileName.value) 
    { 
     alert ("No File is selected to Move"); 
     return false; 
    } 
    else 
    { 
     document.getElementById("btn_sbmt").disabled = 'true'; 
     document.getElementById("frm1").submit(); 
     return true; 
    } 
} 

Для более чистой версии вы можете использовать jQuery. http://api.jquery.com/submit/

+0

Зачем нужно вызывать '.submit()', когда кнопка 'type =" submit "и обработчик события возвращает' true'? – nnnnnn

+0

ya спасибо, что это сработало. Я не знаком с jquery, поэтому я использовал javascript. требуется еще одна небольшая функциональность. когда форма отправлена ​​и кнопка отправки отключена, как я могу изменить заголовок кнопки отправки на «обработка ..»? – Rahul

+0

Вы можете использовать этот код 'document.getElementById (" btn_sbmt "). Value =" Обработка ... ";' – Sithu