我正在尝试通过AJAX将一些HTML表单数据以及全局数组传递给PHP。我知道如何传递数组,也知道如何传递序列化的表单数据。但是我如何同时通过两个?我已经尝试过数据:{formData,arrGFormId:arrGFormId},但是它不起作用。
编辑:该表单只是带有一些输入的简单HTML表单。我的数组值来自另一个AJAX调用,并被推送到全局数组arrGFormId中。
function validateForm3(){
jQuery.ajax({
type: "POST",
url: "community_form_add.php",
async: false,
data: { arrAdminList: arrAdminList },
}).done(function(rs){
var sResult = rs.sResult;
var arrFormId = rs.arrFormId;
Array.prototype.push.apply(arrGFormId, arrFormId);
})
})
var arrGFormId = [];
jQuery('#formCreateForm').submit(function(e){
e.preventDefault();
var formData = new FormData(jQuery(this)[0]);
formData.append('sAction', 'submitForm');
jQuery.ajax({
type: "POST",
url: 'community_form_add.php',
data: formData,
cache: false,
contentType: false,
processData: false,
beforeSend:function(){
jQuery('.load_ball').css("display","block");
},
success: function(data)
{
jQuery('.load_ball').css("display","none");
jQuery('.cover').css("display","block");
jQuery('.popUpSubmitSuccess').fadeIn(300);
}
})
});
答案 0 :(得分:0)
您可以在现有表单中使用隐藏的输入。隐藏输入的值是数组。因此您只能通过ajax传递beeline
Beeline version 1.2.1000.x.x.x.x-xx by Apache Hive
。
答案 1 :(得分:0)
您需要对数组进行编码,然后可以将其添加到<complexType name="CT_Col">
<attribute name="min" type="xsd:unsignedInt" use="required"/>
<attribute name="max" type="xsd:unsignedInt" use="required"/>
<attribute name="width" type="xsd:double" use="optional"/>
<attribute name="style" type="xsd:unsignedInt" use="optional" default="0"/>
<attribute name="hidden" type="xsd:boolean" use="optional" default="false"/>
<attribute name="bestFit" type="xsd:boolean" use="optional" default="false"/>
<attribute name="customWidth" type="xsd:boolean" use="optional" default="false"/>
<attribute name="phonetic" type="xsd:boolean" use="optional" default="false"/>
<attribute name="outlineLevel" type="xsd:unsignedByte" use="optional" default="0"/>
<attribute name="collapsed" type="xsd:boolean" use="optional" default="false"/>
</complexType>
中。您可以将其转换为JSON。
FormData
然后在PHP中,您可以使用formData.append('arrGFormId', JSON.stringify(arrGFormId));
。