『壹』 javascript如何获取post返回的数据
参数不可能没有数名称?post/get参数必须有名称,否则无法被服务器解析
例如:.com/a/b?name=li&age=10
1..com是域回
2.a/b是路径,也称为路由路径
3.name/age是get参数
4.注意答post参数也必须要key(即名称),不要以为使用post提交的参数就没有名称,只是默认不显示到浏览器地址栏而已
『贰』 ajax 异步请求后台返回字符串赋值给js参数
方法1:先设置同步复在进制行Ajax操作
//在全局或某个需要的函数内设置Ajax异步为false,也就是同步
$.ajaxSetup({
async : false
});
//然后再进行你的Ajax操作
$.post(地址, 参数, function(data, status) {
if (status == "success") {
//赋值给全局变量
}
else {
alert("wrong");
}
});
方法2:直接用$.ajax
$.ajax({
type : "post",
url :地址,
data : "参数" + 参数的值,
async : false,
success : function(data){
//赋值给全局变量;
}
});
『叁』 js如何用AJAX请求 $.post获取php中的数据poi_lng/poi_lat/poi2_lng/poi2_lat
$.post("../traffic/php/realtime.php",function(data){})中function的参数data就是后台返回的数据,php看不懂,不晓得你这个php返回的是个什么数据。你可以直接在浏览器的地址栏中输入那个php页面的地址访问一下看回来的数据是什么样的。
『肆』 js中怎样使用ajax通过post提交数组数据php在后台怎样获取数组数据
把一个数组当参数传一样的,比如原来:{name:'zhang'},现在是{name:['zhang','li','wang']}。需要后台注意的是局轮仿获取name参数值则要用数组去存储name值了桐春。
你可以去后盾人平台看看,里面的东西不桐纤错
『伍』 JS ajaxFileUpload 传参数的时候 有没有和ajax一样的 type:'post' 的设置
语法:$.ajaxFileUpload([options])
options参数说明:
1、url 上传处理程序地址。
2,fileElementId 需要上传的文件域的ID,即<input type="file">的ID。
3,secureuri 是否启用安全提交,默认为false。
4,dataType 服务器返回的数据类型。可以为xml,script,json,html。如果不填写,jQuery会自动判断。
5,success提交成功后自动执行的处理函数,参数data就是服务器返回的数据。
6,error 提交失败自动执行的处理搏磨颤函数。
7,data 自定义参数。这个东西比较有用,当有数据是游燃与上传的图片相关的基败时候,这个东西就要用到了。
8, type 当要提交自定义参数时,这个参数要设置成post
『陆』 js的ajax用post传值和直接form表单post传值的区别为什么form的可以用,js的不行。而且已经成功传过去了
//form提交都是把input的name和value组合起来发专过去的属
varbmPage=$(":text[name='bmPage']").val();
varbook=$(":text[name='book']").val();
『柒』 如何使用js向指定一个网站发送一个带参数的post请求
/*
* 1 创建XMLHttpRequest对象 */
var xhr = ajaxFunction();
/*
* 2 服务器向浏览器响应请求
*
* readyState 属性表示Ajax请求的当前状态。它的值用数字代表。
0 代表未初始化。 还没有调用 open 方法
1 代表正在加载。 open 方法已被调用,但 send 方法还没有被调用
2 代表已加载完毕。send 已被调用。请求已经开始
3 代表交互中。服务器正在发送响应
4 代表完成。响应发送完毕
常用状态码及其含义:
404 没找到页面(not found)
403 禁止访问(forbidden)
500 内部服务器出错(internal service error)
200 一切正常(ok)
304 没有被修改(not modified)(服务器返回304状态,表示源文件没有被修改 ) */
xhr.onreadystatechange = function(){
alert(xhr.readyState); //alert(xhr.status);
if(xhr.readyState==4){ if(xhr.status==200||xhr.status==304){
var data = xhr.responseText;
alert(data);
}
}
}
/*
* 3 浏览器与服务器建立连接
*
* xhr.open(method, url, asynch);
* * 与服务器建立连接使用
* * method:请求类型,类似 “GET”或”POST”的字符串。
* * url:路径字符串,指向你所请求的服务器上的那个文件。请求路径
* * asynch:表示请求是否要异步传输,默认值为true(异步)。 */
xhr.open("POST","../testServlet?timeStamp="+new Date().getTime()+"&c=18",true);
//如果是POST请求方式,设置请求首部信息
xhr.setRequestHeader("Content-type","application/x-www-form-urlencoded");
/*
* 4 浏览器向服务器发送请求
*
* send()方法:
* * 如果浏览器请求的类型为GET类型时,通过send()方法发送请求数据,服务器接收不到
* * 如果浏览器请求的类型为POST类型时,通过send()方法发送请求数据,服务器可以接收 */
xhr.send("a=6&b=9"); //xhr.send(null);
『捌』 用JQuery.ajax方法,用post方式传两个int类型的参数给后台tomcat服务器,后台用Struts2编写,请问发送参
js代码
varparam1=12;
varparam2=24;
$.ajax({
type:"POST",
url:"ajax",
data:{'param1':param1,'param2':param2},
success:function(data){
}
});
action配置(假如ajax url匹配com.test.Ajax这个类)
<actionname="ajax"class="com.test.Ajax">
<resultname="success">/success.jsp</result>
</action>
后台代码(Ajax类)
packagecom.test;
importcom.opensymphony.xwork2.ActionSupport;
{
privateIntegerparam1;
privateIntegerparam2;
publicvoidsetParam1(Integerparam1){
this.param1=param1;
}
publicvoidsetParam2(Integerparam2){
this.param2=param2;
}
@Override
publicStringexecute()throwsException{
System.out.println(param1);
System.out.println(param2);
returnSUCCESS;
}
}
『玖』 怎么用javascript发送post请求
//原生js实现Ajax
function ajax() {
var ajaxData = {
type: arguments[0].type || "GET",//提交方式,默认get
url: arguments[0].url || "",//路径
async: arguments[0].async || "true",//是否异步,默认异步
data: arguments[0].data || null,//参数
dataType: arguments[0].dataType || "text",//类型
contentType: arguments[0].contentType || "application/x-www-form-urlencoded",
beforeSend: arguments[0].beforeSend || function() {},
success: arguments[0].success || function() {},
error: arguments[0].error || function() {}
}
ajaxData.beforeSend()//默认执行before方法
var xhr = createxmlHttpRequest();//创建request对象
xhr.responseType = ajaxData.dataType;
xhr.open(ajaxData.type, ajaxData.url, ajaxData.async);
xhr.setRequestHeader("Content-Type", ajaxData.contentType);
xhr.send(convertData(ajaxData.data));
xhr.onreadystatechange = function() {
if(xhr.readyState == 4) {
if(xhr.status == 200) {
ajaxData.success(xhr.response)
} else {
ajaxData.error()
}
}
}
}
function createxmlHttpRequest() {
if(window.ActiveXObject) {//判断IE
return new ActiveXObject("Microsoft.XMLHTTP");
} else if(window.XMLHttpRequest) {
return new XMLHttpRequest();
}
}
function convertData(data) {
if(typeof data === 'object') {
var convertResult = "";
for(var c in data) {
convertResult += c + "=" + data[c] + "&";
}
convertResult = convertResult.substring(0, convertResult.length - 1)
return convertResult;
} else {
return data;
}
}
var json = ajax({
url: "http://192.168.10.22:8080/xxx",
dataType: "json",
success: function(msg) {
var date=msg;
if(date.stateCode=200){
var result=date.dataList;
}
}
},
error: function() {
console.log("error")
}
})
以上是原生js实现,也可以引入jquery 使用$.post()
『拾』 js ajax post请求 传递一个较长的参数,火狐浏览器可以正常传递到后台做处理,谷歌浏览器会把参数截断
应该不会出现这样的问题吧。
试试给请求参数编码 encodeURIComponent('参数')或者 escape('参数')