js或JQuery接收表单数据问题

劳驾各位大哥大姐,小弟新手,想请问有没有js或是JQuery接收表单数据的方法。就是从a.html发送到b.html页面的的form数据,在b.html怎么接收?请说的详细点,最好有例子。谢谢各位了,回答的好会加分

@free361 和 @pzl7758 说的都没错,如果没有动态页面是不能实现真正意义上的表单传值的。
但如果a.html 要往 b.html 发送一些数据是可以通过比较旁门左道的方法实现,那就是在b.html中通过JavaScript 解析地址栏中的参数(通过a.html中的表单的get方法跳转到b.html即可将参数追加到地址后),比如地址栏为 b.html?name=lyh5737715&sex=male 这样的。可以通过调用下面这个函数来获取所需的参数值:
function getParameter(paraName)
{
var urlStr=location.href;
var queryStr=((urlStr.split("?"))[1].split("#"))[0];
var queryParaList=queryStr.split("&");
var queryValue="";
for(var i=0;i<queryParaList.length;i++)
{
var queryParaName=(queryParaList[i].split("="))[0];
if(queryParaName==paraName)
{
queryValue=(queryParaList[i].split("="))[1];
break;
}
}
return queryValue;
}

比如 getParameter("name"); 将返回 "lyh5737715",getParameter("sex"); 将返回 "male" ,不过这种方法要注意的是b.html后边的参数长度(字符数)一般都会受到WEB服务器或浏览器的限制导致不能传递过多的信息量。追问

我做的页面是从a.html利用JQuery中的$.ajax方法,向b.html的页面发送id,并在b页面显示,最后b页面的数据还要发送到后台的php页面,可是我不知道怎么在b页面接收,要是b页面做成php页面,$_GET['id']能接收么?我试了几次都不行。您的方法也不错,要是我实在不行,就用您的方法

追答

不太搞得清楚你的意思。
用ajax发送参数到b页面,可是当前页面还停留在a页面呐,b页面是要在哪里显示的呢?
如果b页面做成php,自然是可以获取a发送来的id。但是你在a页面用ajax通信(ajax基本上就是被设计用来实现页面无刷新提高用户体验的),数据还是会返回到a页面中。这就无从谈起将b页面的数据发送到后台的php页面,除非你在a页面再次发起一个ajax请求,将之前通过ajax从b获取的数据再次发送到后台的php页面。这样的意义就是将a完全作为一个前台界面,而b和后来的那个php页面其实就是做业务处理的,那就应该将b页面做成php专门负责处理请求,这样才合理。
还有$_GET['id']是可以获取到a传来的id的,前提是a中的$.ajax 只能包含 type: "GET" 或完全不包含(因为默认的type就是"GET") 这一选项,否则用其他的方式(如POST、DELETE等)是无法在b页面获取 id 的。

参考资料:我以前就这么做过

温馨提示:答案为网友推荐,仅供参考
第1个回答  2012-02-23
亲,静态页是没法接收表单信息的。
表单只能发送给程序页。
例如b.php
<?
$name = $_POST['name'];
?>
通过程序处理完成后,传给模板、或者直接显示。
<td>姓名</td><td><?echo $name?></td>

但是php需要安装服务器,解析后你才能在浏览器看到。用asp、jsp等原理相同追问

就是不想用这种方法,才问的,用JQuery实现不了么?

追答

用document.URL;可以取得当前url值
比如参数是从get方式传播的
b.php?ap=admin&task=deal
用js函数把问号后面的值取出来
再用&分割后面的部分,把取出的值分成数组后,再用=分割,最后得到各参数和值
但是post发送过来的就处理不了了

第2个回答  2012-02-24
你可以弄成用url传参数的方法去试,但这个没法传大数据量与文件追问

可以说的详细点么?