国外设计欣赏网站 - DOOOOR.com

 找回密码
 注册

QQ登录

只需一步,快速开始

扫一扫,微信登陆

搜索
打印 上一主题 下一主题

[Drupal问题] Drupal:自己定义一个表单,然后用ajax提交---jQuery.post的用法

[复制链接]
跳转到指定楼层
楼主
发表于 1-29-2012 16:26 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
需 求
; o" R; I4 A4 ]7 z4 |' b在Drupal中自己定义一个表单,然后用ajax提交。
% [: J; q' _) i% y
解决方案
用html写一个form, 然后在form外面设置一个Button, 在button的onclick事件中调用jQuery.post()函数,将表单进行提交。+ t' y& t, K: T/ I" F
有下面两点需要注意:
  • button一定要放在表单外面,否则就会刷新页面了
  • 每个input的控件必须有name, 如果没有name是无法获得数据的
  • 在用jQuery.post()进行提交时,需要将form序列化,使用jQuery的Helper的.serialize()即可. Y' n: ^! A, r& r
示例代码
1 ?7 l  e6 n( Z; L# x
<form id="form_charge"><label for="txt_name"> Name:</label> <input type="text" name="txt_name"  id="txt_name"></input><label for="txt_age"> Age:</label> <input type="text" name="txt_age" id="txt_age"></input></form><button onclick="$.post('/post/form', $('#form_charge').serialize(), function(data){$('#box_charge_result').html(data);});">Go!</button>: ^8 W9 A9 k6 C3 B# r

( Z) Y3 E* b, L! D这样在提交后,在/post/form路径中的$_POST会获得一个提交数组,如下面所示:* _- @' k! F. B% i. O5 J' }
array(2) { ["txt_name"]=>  string(1) "Blade" ["txt_age"]=>  string(1) "100" } " u- r  G" m  k4 w3 O
! m" ~3 R9 q3 Q/ i9 w3 C

|2011-2026-版权声明|平台(网站)公约|DOOOOR 设计网 ( 吉ICP备2022003869号 )

GMT+8, 7-2-2025 13:00 , Processed in 8.452034 second(s), 477 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表