導航:首頁 > 編程語言 > js提交

js提交

發布時間:2023-03-02 17:38:16

js表單提交

表單提交是剛開始學js的朋友很迷惑的一個問題,怎麼提交,怎麼阻止默認提交,怎麼提交表單不跳轉等等問題,下面是一些示例

原始的表單提交有 button 按鈕提交和 <input /> 類型的。它們又什麼區別呢?

(1) 默認表單提交

(2)默認不會提交表單

(3) 如果在 form ,我們使用了 type=''submit 屬性,但是不讓表單默認提交,有什麼辦法呢?看下面

(4) 如果在 form ,我們使用了 type=''button 屬性,但是還是需要提交表單,這是可以使用ajax來提交,好處是可以自己控制提交,並且頁面不會跳轉

(5)若是使用默認提交的方法,且提交之前驗證表單,方法看下面

(6) 若是使用了 type='button' 屬性,但是還是想實現默認提交的方式怎麼辦? 看下面

(7) 下面的提交會發生什麼?

分析 : 點擊提交按鈕:
(1)當表單驗證失敗時,不會觸發 form.submit() 函數,所以可以觸發 <form> 的 onsubmit 句柄,又因為該句柄 return false 所以表單不會從該句柄處默認提交,所以 會在控制台列印出 表單的onsubmit事件句柄在form.submit()調用時失效'
(2)當表單驗證成功時,會觸發 form.submit() 函數提交表單,又因為 form.submit()提交表單的方式與用戶單擊 Submit 按鈕一樣,但是表單的 onsubmit 事件句柄不會被調用,所以 控制台不會列印出 表單的onsubmit事件句柄在form.submit()調用時失效

現在表單默認提交的方式基本沒人用了,都是ajax非同步提交。但是了解一些還是好的。。。

javascript中怎麼提交表單

H5e教育html5開發為您解答:
辦法1.同一個頁面中建立兩個表單 各自提交:
<form action="?" name="form1" id="form1">
<!-- 表單內容專 -->
<input type="submit" />
</form>
<form action="?" name="form1" id="form1">
<!-- 表單內容 -->
<input type="submit" />
</form>
辦法2:如果非屬要只有一個表單的話,通過js提交:
<script type="text/javascript" language="javascript">
function submitYouFrom(path){
$('form1').action=path;
$('form1').submit();
}
</script>
<form action="?" name="form1" id="form1">
<!-- 表單內容 -->
<input type="button" value="提交1" onclick="submitYouFrom('地址一')"/>
<input type="button" value="提交2" onclick="submitYouFrom('地址二')"/>
</form>

③ js表單提交和submit提交的區別是什麼

js提交和submit按鈕提交的區別:

1. js提交表單時不會帶上 submit 按鈕的值回(因為沒有被單擊答) 所有瀏覽器
2. input 回車提交 w3c瀏覽器會帶上submit按鈕的值,ie6則不會帶
解決辦法:
增加一個hidden域,用這個來判斷,無論用哪種方式提交都會有值
submit按鈕上綁定提交事件:
即:<input type="submit" name="btn" value="btn" onclick="test()" />
都會帶上submit的值, 用js提交都檢測不到onsubmit狀態
w3c: 提交一次
ie6: 分兩次提交,先js在form提交
解決辦法:
如果按鈕為submit則 檢測時用onsubmit事件檢測
如果按鈕為button,則檢測通過後在觸發submit事件
一定不要用js提交表單,然後又用onsubmit去檢測
單純的用js提交表單, alert, ff下阻塞表單的提交,而其他瀏覽

④ js表單提交和submit提交的區別

假設:
A表單內有<input type="submit">,通過點擊這個input來提交表單
B表單內沒有<input type="submit">,而是寫了一個<input type="button">,並且在這個input上綁定了click事件,在事件的監聽器內用js的form.submit()提交。

1.在A表單內的某個input type=text,用戶正與它交互(它是當前焦點),用戶只需要按一下鍵盤的enter,就能提交表單;而B在某些情況下不行(部分情形參考回車提交表單),只能click下面的button;當然你可以給每個input綁定一個keypress事件,再檢測按下的鍵是不是enter,如果是,就提交……只要不覺得蛋疼。
2.B表單提交不會觸發form的 onsubmit事件;A會觸發。

另外,還有HTML語義化的區別,A表單的處理更語義化,至於A能在js載入失敗時提交表單(起碼還能用),B不行之類的,就不說了。

總之,A,<input type="submit">更好,B在用戶體驗上差的有點多。

⑤ Js提交和submit提交

其實主要還是在input和textarea 用js中sumbit提交方式 只對input標簽中name進行提交

⑥ 在js中表單提交是彈出提交成功怎麼寫

submit只是表單提交時的驗證事件,無法獲取提交是否成功
return false阻止表單提交,自己寫ajax提交表單內容
$("#xxx").submit(function () {
$.ajax({ type: 'POST', data: $(this).val(), url: 'xxxx',
success: function () { //...
},
error: function (xhr) {
//...
}
});
return false;
});

⑦ jquery或js前端提交數據的幾種方式

1.jquery提交數據的方式:
(1)第一種jquery序列化提交數據方式:
通過id獲取的form表單元素.serialize();
(2)第二種模擬form表單提交元素:
$('#form表單id').attr('method','post');
$('#form表單id'').find('input[name="type"]').val(test);
$('#form表單id').find('input[name="dfrom_to1"]').val(dfrom_to);
$('#form表單id').find('input[name="gt_road_new"]').val(gt_road);
$('#form表id').attr('action',AdminLTE.ctx+'/moles/ltegt/findAllCoverAndInterfere.do');
$('#analysisForm').submit();
2.js提交數據的方式:
(1).js提交表單( .submit()方法提交表單 )
function doSearch(){
var action ="<%=path%>/User_queryAllUser";
document.all.form.action = action;
document.all.form.submit();}
(2).js替代超鏈接( window.location.href )
<input type="button" id="modify" value="修改工號" οnclick="modifyEmp(${ myList.employeeId })">
//js不能起名為modify,為敏感關鍵字
function modifyEmp( employeeId ){
//employeeId 作為js的參數傳遞進來
window.location.href = '<%=path%>/User_openUserUpdate?employeeId='+employeeId;

⑧ Js如何實現自動提交表單!

要想自動提交你可以在你的網頁上偵測你的表單變化則提交,可內這個變化沒個限度,比如從容空到A,這就變化了,再到AD又變化了,再到ADMIN這一直變化,到底提交那次呢,
還有一種可能是定時刷新提交,這個也有問題,在刷新時客戶不一定填完,反之亦然。
第一個可以規定,各個表單幾個字元不到不提交,
第二個也是在刷新時判斷有幾個字元不到不提交,

⑨ js 提交表單數據: 附件+對象的的多集合

在我們前端進行表單提交的時候,有時候會出現這種情況:Failed to convert   java.lang.String    to java.util.List

等等。

例如:

  我後台定義一個對象:

       examPaper 包含  String userId,Float userScore, MultipartFile  examFile  用戶id  ,試卷分數,試卷文件

對象外面   classPaper有: String classId  String className  List<examPaper>  examPaperList

這個時候,後台接收為  ClassPaper

如果按照平常的 form-data   提交  則應按以下方式提交:

let  fd  = new FormData();

fd.append("classId ",classId );

fd.append("className ",className );

examPaperList.forEach((item,index) ->{

     fd.append("examPaperList["+index+"].userId",item.userId);

     fd.append("examPaperList["+index+"].userScore",item.userScore);

     fd.append("examPaperList["+index+"].examFile ",item.examFile );

});

以這種方式就可以實現 多附件  一一 對應提交。以避免對象轉換錯誤問題。

閱讀全文

與js提交相關的資料

熱點內容
java俄羅斯方塊項目描述 瀏覽:354
win10系統被凍結 瀏覽:460
excel文件批量合並 瀏覽:948
linuxxmind 瀏覽:93
蘋果電腦安全軟體 瀏覽:195
u深度取消贊助密碼 瀏覽:168
編程寫東西都寫得是什麼 瀏覽:35
蔚來怎麼推薦app 瀏覽:269
6s輸入密碼來使用siri 瀏覽:742
程序員黑客頭像酷 瀏覽:739
mvc接受上傳文件 瀏覽:365
程序員可以轉金融嗎 瀏覽:193
無需用戶名密碼的共享 瀏覽:775
一加怎麼和win10傳輸文件 瀏覽:425
大數據分析哪些行業 瀏覽:848
win10刪除自動更新文件在哪裡 瀏覽:581
cad打開一個文件要關閉另一文件 瀏覽:432
鋼鐵雄心4升級包 瀏覽:558
一加找不到恢復文件 瀏覽:960
遼寧高中查分數的app有哪些 瀏覽:790

友情鏈接