gpt4 book ai didi

javascript - 序列化 jquery post 使其看起来像普通表单提交

转载 作者:行者123 更新时间:2023-11-28 18:13:24 25 4
gpt4 key购买 nike

我必须将 jquery .post 与 php 脚本集成,该脚本期望字段名称为 $_POST 数组键,如 $_POST['field_name']。如果我像这样写出键值对

示例1:

$.post("http://localhost/post_handler", {
'foo' : 'bar' //<- key value pair
},
function(data, status){
console.log(data);
},
'json'
);

它完美地发布,意味着 $_POST['foo'] = 'bar'。不幸的是,有数百个字段,我无法将它们写出来。如果我尝试

示例2:

var post =  $("form").serialize();
$.post("http://localhost/post_handler", {
post
},
function(data, status){
console.log(data);
},
'json'
);

后端得到类似:

  $_POST['post'] = 'field1=1&field2=2&field3=3'

我必须在后端拆分字段。

对于这个项目,我无权访问后台,也无法控制服务器对帖子的处理方式。我需要后端像普通表单提交一样处理这个问题。同样,我有数百个字段,因此我不想像示例 1 那样将其写出来。

我可能会做一个循环,但我认为必须有一个内置的方法来做到这一点。

最佳答案

正如我评论的那样

In example 2, the post var is inside a object ({}), pass it directly: $.post(url, post, function, 'json');

var post =  $("form").serialize();
$.post("http://localhost/post_handler", post,
function(data, status){
console.log(data);
},
'json'
);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

<form>
<input type="text" name="i1" value="v1">
<input type="text" name="i2" value="v2">
</form>

关于javascript - 序列化 jquery post 使其看起来像普通表单提交,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41170197/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com