这是一个非常简单的问题(我希望),但只是倾向于/掌握jQuery我提前道歉。
如果我有表格,例如
<form id="form">
<input type="text" name="abc" />
<input type="text" name="def"/>
<input type="text" name="ghi"/>
<input type="submit" name="try" id="try" />
</form>
然后像这样通过jQuery发送它
$.post("process.php", $("#form").serialize());
如何访问数据以处理process.php上的信息?即通过一个简单的PHP插入查询(我可以编写PHP!),我该如何访问序列化数据。还有一种方法可以将所有数据(来自3个字段)作为i变量发送 - 我认为这是JSON吗?如果是这样,那么当我调用数据库显示它时,如何重新处理该信息。
我对大多数事情都有很好的把握,所以你不需要过于简单化,但只是一些通用指针会有所帮助。感谢
答案 0 :(得分:1)
在process.php中,数据已在$ _POST超全局中反序列化。
JSON是另一种最适合将PHP响应发送回javascript的序列化形式。
所以在你的情况下,例如,process.php读取$ _POST,以某种方式处理结果,然后你可以格式化脚本返回数组中的值,使用json_encode()和die($ json_encoded_variable_here)返回它到jquery。
在jquery中,您可以为函数添加回调:
$.post("process.php", $("#form").serialize(), function(json){
// the variable json is the JSON died() by php and can be easily parsed by jquery
}, 'json');
答案 1 :(得分:0)
您是否考虑过简单地更改表单标记的操作和方法属性,然后提交?
$("#form").attr("action", "process.php").attr("method", "post").submit();
话虽如此,如果你这样做,要小心。直接从jQuery调用submit()时,不会运行onSubmit(如果有的话)。你必须找到它并自己运行它。