<script>
function submit_ok(){

var mount=document.getElementById("mount").value;
var sp_name=document.getElementById("sp_name")[removed] ;
//alert(sp_name);
if(mount=="")
{
document.getElementById("mount").value=0;
mount=0;
}
var event=document.getElementById("event").value;
var type="";
if(event=="1")
{
type="銷貨";
}
if(event=="2")
{
type="退貨";
}
if(event=="3")
{
type="進貨";
}
if(event=="4")
{
type="調入";
}
if(event=="5")
{
type="調出";
}


var msg="";
msg=sp_name+"\n商品數量:"+mount+"\n類型:"+type+"\n確認後請按確定!";
if(confirm(msg))
document.form1.submit();

}





<form action="save.php" method="post" name="form1">
選擇類型:<select name="event" onchange="getdate()">
<option value="1" selected>銷貨</option>
<option value="2">退貨</option>
<option value="3">進貨</option>
<option value="4">調入</option>
<option value="5">調出</option>
</select>
<input type=text name="mount" size="10" onkeyup="chk()">
<input type='hidden' name='product_code' value='<? echo $_GET["product_code"]?>'>
<input type='hidden' name='dep_no' value='<? echo $_GET["dep_no"]?>'>
<input type='hidden' name='pid' value='<? echo $_GET["pid"]?>'>
<input type='hidden' name='sid' value='<? echo $_GET["sid"]?>'>
<input type='hidden' name='user_name' value='<? echo $user_name;?>'>
<input type="button" name="send" value="送出" onclick="submit_ok()">
</form>




這段程式中,當使用者點送出後會先跑submit_ok這段javascript,但是我發現如果使用者直接按enter鍵,就會直接submit到save.php這個網頁中,不知道有沒有什麼方法可以讓使用者就算是按enter鍵也可以先跑submit_ok這段程式呢?
文章關鍵字
<form action="save.php" method="post" name="form1" obsubmit="return submit_ok">

然後submit_ok()中

if(confirm(msg))
return true //submit 確認,送出
else
return false //不送出
小弟剛剛試了你的方法,我發現它還是一樣不會去跑那段javascript就直接submit了耶

我後來另外寫了一個function給obsubmit來用,但也一樣沒有去檢查就submit出去了

我找到原因了,要改成onsubmit="return submit_ok();"而不是osubmit
那是他拼錯囉

正常的邏輯onsubmit應該是掛在form下面
而不是在submit的按鈕上
電腦工程師,有問題可以找我討論 Raxel
那麼小弟再請教一個問題
因為這個表單中有一個下拉式選單以及一個輸入框,我在測試的過程中發現如果使用者先在輸入框中填值,再去選下拉式的選單,再按enter沒反應了,不會submit,有沒有什麼方法可以讓我只要按enter鍵就可以直接submit出去呢?
文章分享
評分
評分
複製連結

今日熱門文章 網友點擊推薦!