[英]Pass Form Data with Query String Parameters
我正在使用$.ajax
發布兩個表單 select 值並觸發重新安裝事件,但我無法傳遞Form Data
值。
這是我的click.function
$('button.submitForm').click(function (event) {
event.preventDefault()
var form = $(this.form)
var formCont = new mgFormControler(form.attr('id'))
var formData = formCont.getFieldsData()
$.ajax({
url: form.attr('action') +
'&loadData='+ form.attr('index') +
'&namespace='+ form.attr('namespace') +
'&index='+ form.attr('index') +
'&ajax=1' +
'&mgformtype=' + form.attr('mgformtype'),
type: form.attr('method'),
processData: false,
contentType: false,
data: formData
}).done(function (data) {
console.log(form.attr('id'))
console.log(form.attr('namespace'))
data = data.data
if (data.status === 'success') {
console.log(data.status + ': ' + data.message)
} else {
console.log(data.status + ': ' + data.message)
}
});
});
});
dev.tools 中的 header(第一張圖片)顯示 formData 在查詢字符串參數中作為 object 傳遞, 但我想將它作為一個單獨的元素傳遞(第二張圖片)
我嘗試new FormData()
但我總是得到與 object 相同的結果(第一張圖片)。
嘗試在您的代碼中使用:
type: 'POST',
data: jQuery.param({ field1: "hello", field2 : "hello2"}) ,
contentType: 'application/x-www-form-urlencoded; charset=UTF-8',
嘗試 JSON.stringify()
$('button.submitForm').click(function (event) {
event.preventDefault()
var form = $(this.form)
var formCont = new mgFormControler(form.attr('id'))
var formData = formCont.getFieldsData()
$.ajax({
url: form.attr('action') +
'&loadData='+ form.attr('index') +
'&namespace='+ form.attr('namespace') +
'&index='+ form.attr('index') +
'&ajax=1' +
'&mgformtype=' + form.attr('mgformtype'),
type: form.attr('method'),
processData: false,
contentType: false,
data: JSON.stringify(formData) //add this
}).done(function (data) {
console.log(form.attr('id'))
console.log(form.attr('namespace'))
data = data.data
if (data.status === 'success') {
console.log(data.status + ': ' + data.message)
} else {
console.log(data.status + ': ' + data.message)
}
});
});
});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.