AJax提交参数是不是只能通过url的形式提交。而不能通过ajax提交from
ajax提交数据,但是并没有现在数据的格式呀!
至于提交的数据是否能被后台服务器所认识那是前后台ajax数据通信约定的事情。
看看我以前写的文章
降低前后台业务逻辑上的耦合度,前后台细粒度数据通讯的方法
[url]http://achun.iteye.com/blog/200417[/url]
就是一个典型的ajax数据通信契约,不过这个是很标准的JSON格式了。
不能,ajax提交无非就2种形式,一是get参数随url一起提交,二是post参数单独提交.你必须把form里的所有参数得到,再拼成字符串用ajax提交.一般ajax框架都提供获得form所有值的方法,不需要自己写的.
理论上面是这样的,绝对没有from.submit提交ajax的说法.
url拼接参数在ajax里面是必不可少的,但是ajax提交的时候,最终形成的http请求报文与from.submit形式是一摸一样的.所以,其实submit提交的时候参数也是采用的URL的形式传递的参数.不过要注意下get和post提交请求时的小小不同.
ajax可以模拟form的提交嘛,form提交也一样是用http的get或post方式
只不过ajax没办法模拟form里有的情况
[color=red]AJax提交参数是不是只能通过url的形式提交。而不能通过ajax提交from [/color]
不是啊,url 是get方法 .post 方法也可以.frorm 也可以啊不过要相关插件
[color=red]$.ajax({url:rurl,
type:"GET", //可是post
dataType:"json",
data:data,//要将参数写成对象形式 于data={id:1};
error:function (xml) {
alert("\u7cfb\u7edf\u9519\u8bef\uff0c\u8bf7\u7a0d\u540e\u518d\u8bd5\uff01");
}, success:function (data) {
if (data["status"] == 1) {//success
} else {//false
merdesc.html(data["content"]);
}
}});[/color]
jquery ajax 方式
如果用的是jQuery,可以用jQuery Form Plugin:
http://malsup.com/jquery/form/
能自动帮你组装data并提交form,下面是官方的Quick Start Guide:
Add a form to your page. Just a normal form, no special markup required:
[code="html"]
[/code]
Include the jQuery and Form Plugin external script files and a short script to initialize the form when the DOM is ready:
[code="html"]
[/code]
[quote]AJax提交参数是不是只能通过url的形式提交。而不能通过ajax提交from [/quote]
都可以
都可以啊,建议使用prototype,百度下prototype ajax post就可以了得到结果了。
补充:
只有ajax提交from这个当然能了,不过当然不能直接把from作为值传过去呀
要把from中的数据变换成后台数据通信契约里面可以理解的格式才行呀。
说到底还是数据通信约定格式的问题