2012-10-17 136 views
36

我只是學習JavaScript和PHP。我創建了一個聯繫表,我想提交按鈕以完成兩件事情,當我按下它:添加onclick函數到提交按鈕

  1. 的數據提交給我(這部分工作)
  2. 閱讀我的onclick功能(這部分是不工作)
<input id="submit" name="submit" type="submit" value="Submit" onclick="eatFood()"> 

<?php 
if ($_POST['submit']) { 
////????? 
} 
?> 

我發送數據給我的電子郵件,所以我明白了。但onclick函數似乎不起作用。我試着檢查add onclick function for submit button,但它沒有幫助。

+0

向我們展示您的代碼,以評估uate最新錯誤 – Rafael

回答

8

如果您在提交數據前需要做些事情,可以使用表單的提交

<form method=post onsubmit="return doSomething()"> 
    <input type=text name=text1> 
    <input type=submit> 
</form> 
39

我需要看到您的提交按鈕html標記以獲得更好的幫助。我不熟悉PHP,以及如何處理回發,但我這取決於你想要做什麼猜測,你有三種選擇:

  1. 獲取有關客戶端的處理onclick按鈕:在這種情況下,你只需要調用一個javascript函數。

function foo() { 
 
    alert("Submit button clicked!"); 
 
    return true; 
 
}
<input type="submit" value="submit" onclick="return foo();" />

  • 如果你想處理在服務器端的點擊,你應該首先確保表單標籤的方法屬性是設置爲post

    <form method="post"> 
    
  • 您可以從form使用onsubmit事件本身將你的功能綁定到它。

  • <form name="frm1" method="post" onsubmit="return greeting()"> 
     
        <input type="text" name="fname"> 
     
        <input type="submit" value="Submit"> 
     
    </form>

    +2

    表單的onsubmit是更好的處理程序。如果您沒有表格,請轉到'type =「按鈕」' – mplungjan

    +0

    @mplungjan tanx作爲提示,我將其添加到答案 – manman

    +2

    由於參考資料選擇不當,還沒有+1;) – mplungjan

    16

    HTML:

    <form method="post" name="form1" id="form1">  
        <input id="submit" name="submit" type="submit" value="Submit" onclick="eatFood();" /> 
    </form> 
    

    的Javascript: 使用JavaScript

    function eatFood() { 
    document.getElementById('form1').submit(); 
    } 
    

    上顯示提交表單點擊消息

    function eatFood() { 
    alert('Form has been submitted'); 
    } 
    
    3

    我有這樣的代碼:

    <html> 
     
    <head> 
     
    <SCRIPT type=text/javascript> 
     
    function deshabilitarBoton() {  
     
        document.getElementById("boton").style.display = 'none'; 
     
        document.getElementById("envio").innerHTML ="<br><img src='img/loading.gif' width='16' height='16' border='0'>Generando...";  
     
        return true; 
     
    } 
     
    </SCRIPT> 
     
    <title>untitled</title> 
     
    </head> 
     
    <body> 
     
    <form name="form" action="ok.do" method="post" > 
     
    <table> 
     
    <tr> 
     
    <td>Fecha inicio:</td> 
     
    <td><input type="TEXT" name="fecha_inicio" id="fecha_inicio" /></td> 
     
    </tr> 
     
    </table> 
     
    <div id="boton"> 
     
        <input type="submit" name="event" value="Enviar" class="button" onclick="return deshabilitarBoton()" /> 
     
    </div> 
     
    <div id="envio"> 
     
    </div> 
     
    </form> 
     
    </body> 
     
    </html>

    0
    <button type="submit" name="uname" value="uname" onclick="browserlink(ex.google.com,home.html etc)or myfunction();"> submit</button> 
    
    如果你想打開HTML中的按鈕點擊一個頁面,沒有任何腳本語言,然後

    你可以使用上面的代碼。

    +0

    'onclick'如何返回'myfunction()',但強制瀏覽器保持在同一頁面上。該功能只會說「謝謝您的反饋。」我的表單連接到一個本地php文件('formsubmit.php'):'

    ' – sAguinaga

    1
    1. 創建id="hiddenBtn"type="submit"一個隱藏的按鈕都提交
    2. 更改當前按鈕type="button"
    3. 設置當前按鈕的onclick調用function樣子如下:

      function foo() { // do something before submit ... // trigger click event of the hidden button $('#hinddenBtn').trigger("click"); }