function DoAjax( args )
{
var formData = "?" + $("form[name=" + args.formName + "]").serialize();
$.ajax({
type: "POST",
url: args.url + formData,
data: {
request: args.request
},
success: function (data) {
alert(data);
args.callback.html(data);
},
error: function (a, b, c) {
alert("error: " + a + ", " + b + ", " + c + ".");
}
});
return false;
}
我需要将一个自定义位数据传递给我的php脚本,名为“request”,这将表示在php页面上运行哪个进程...但我还想序列化我表单上的任何其他表单字段。这是正确的做法(将序列化添加到URL的末尾),因为我似乎无法从我的PHP $ _POST中获取任何内容[“无论如何”]
EDIT ::: ///
<?php
$request = $_POST[ "request" ];
if( isset( $request ) )
{
require_once( "includes.php" );
function LogInWithClientCred()
{
$username = CheckIsset( "username" );
$password = CheckIsset( "password" );
echo $_REQUEST["username"];
echo $_GET["username"]; // echos correctly the username.. but I want it to be post data instead!
请忽略安全性,它是伪造的。
答案 0 :(得分:2)
将formData
和您的其他数据合并为一个字符串。
var formData = $("form[name=" + args.formName + "]").serialize() + "&request=" + args.request;
$.ajax({
url: args.url,
data: formData,
type: "POST",
...
})
答案 1 :(得分:0)
我不太确定如果我的问题很好,但我认为您将表单数据附加到URL并在ajax中使用POST。
你能试试吗
$ _ REQUEST [“不管”],看看你得到了什么
修改强> 看到通信后我觉得我现在得到了它
function DoAjax( args )
{
var formData = $("form[name=" + args.formName + "]").serialize();
$.ajax({
type: "POST",
url: args.url,
data: {
request: args.request,
formData:formData
},
success: function (data) {
alert(data);
args.callback.html(data);
},
error: function (a, b, c) {
alert("error: " + a + ", " + b + ", " + c + ".");
}
});
return false;
}
现在$ _POST [formData]应该可以工作
修改强> 看到这个
github.com/maxatwork/form2js