2014-11-22 10 views
1

提交表單我有這樣的代碼:的JavaScript函數從

var changedate = document.getElementById("date"); 

    changedate.onchange = submitform; 

    function submitform() { 
    document.forms["form"].submit(); 

    } 

但是我有3個在我的形式提交按鈕,我想與ID叫提交按鈕「保存」使用此功能。 如何,我可以這樣做,因爲當我更改'日期'中的值時,表單被提交,但不是以我手動推送表單底部的提交按鈕'保存'的方式。

回答

1

您可以使用:

document.getElementById("myForm").submit(); 

其中myForm位於表單的ID。

+0

試過了,但奇怪的是,當時沒有任何反應。 – user3733945 2014-11-22 10:58:11

+0

請嘗試document.getElementById(「date」)。addEventListener(「change」,function(){ document.getElementById(「myForm」)。submit(); });請確保沒有重複的ID。與表單ID。 – 2014-11-22 11:03:11

+0

也在頁面加載時執行此代碼。 – 2014-11-22 11:04:24

0

嘗試添加<input type="hidden" name="submitbutton">。在每個按鈕中,提交之前相應地設置該隱藏字段的值。在當日期更改執行的代碼,設置的隱藏價值,你如何爲save按鈕,例如設置:

<form method="post" action="something.php"> 
    <input type="submit" value="save" onsubmit="setType('save');return true;"/> 
    <input type="submit" value="btn2" onsubmit="setType('btn2');return true;"/> 
    <input type="submit" value="btn3" onsubmit="setType('btn3');return true;"/> 
    <input type="hidden" id="hdn" value=""/> 
</form> 

在你的js,

function setType(msg){document.getElementById('hdn').value=msg;} 

,當日期更改,

setType('save'); 
document.forms["form"].submit(); 

確保你在你的php/asp文件中正確捕獲。

0

我覺得問題就來提交表單後:

有一個部分:

<?php 
if (isset($_POST['save'])) { 

// do something 
} 
?> 

這是沒有執行,因爲我不點擊的形式提交按鈕「保存」。