var data=$.ajax({type:"POST",async:"false",url:"Admin/AjaxPages/regist.ashx",data:{type:"ncpd",nc:NickName}}).responseText;有返回值IE下能获到 火狐不行 我就是想直接获到
解决方案 »
- 急,js报错 意外地调用了方法或属性访问 是怎么回事啊?
- js可以读取图片的RGB值吗?
- 为什么功能无法实现
- 用javascript或者jsp判断客户端浏览器(IE)的安全级别,确切说判断userData是否被禁,请高手!!!!!!!!
- 求js树,每个节点可以带复选框的
- firefox兼容问题--previousSibling和nextSibling相关,大侠帮忙啊!
- 语法小问题,求高手指教????在线等待???
- 用Javascript怎么提交一个form啊?
- 【关于<table>自动换行的问题,急】
- 请问document.write的一个问题,大家进来看看
- 原生js如何绑定a连接点击事件?
- 请问一个Jquery autocomplete自动提示插件的问题
{type:"POST",
async:"false",
url:"Admin/AjaxPages/regist.ashx",
data:{type:"ncpd",nc:NickName}
success:function(data)
{
alert(data);
}
})这样是有值的 火狐 IE都有
我就是想要个全局的直接获到
$.ajax(
{
.........
}
)
var global_hello = '';
$.ajax(
{type:"POST",
async:"true",//写成异步的
url:"Admin/AjaxPages/regist.ashx",
data:{type:"ncpd",nc:NickName}
success:function(data)
{
global_hello = data;
}
})
不知道用什么方式可以获到
var ret=$.ajax({type:"POST",async:"false",url:"Admin/AjaxPages/regist.ashx",data:{type:"ncpd",nc:NickName}});
alert(ret);(好奇怪 弹一下了下面就可以获得值)
var data=ret.responseText;
alert(data);(可以获到)
我写了一个全局变量 global_hello,不过很危险。应在你使用 global_hello 之前进行判断。
if(global_hello == ''){
alert('ajax没有及时返回数据');
}else{
alert('global_hello 变量可以用: ' + global_hello);
}
var ncBlur=function(){
var NickName=$("#nc").val();
if(NickName.indexOf("@")>=0)
{
setErrorMessage($("#nc"),document.getElementById("ncSpan"),"昵称不能输入@符号");
return false;
}
var data=$.ajax({type:"POST",
async:"false",
url:"Admin/AjaxPages/regist.ashx",
data:{type:"ncpd",nc:NickName}}).responseText;
if(data=="0")
{
setRightMessage($("#nc"),document.getElementById("ncSpan"));
return true;
}else
{
setErrorMessage($("#nc"),document.getElementById("ncSpan"),data);
return false;
} ;
}
想直接获到data
不奇怪,原因如下:
1、你是ajax提交,那么数据从客户端浏览器到服务器,要花费时间
2、最花费时间的是你的后台运算时间,生成满足你需求格式的json串。
3、如果你对1000万条数据进行一个汇总,然会返回你的汇总的结果(比如价格之和),那么这一个1000万条数据的汇总就花费了很长的时间
4、当你alert()一下的时候,是不是页面的行为被阻止了?alert()的一个作用就是组织程序继续向下一个步骤进行。当你点击alert上面的确定按钮的时候,你需要一个手点击的操作时间。这个时间比后台程序的时间长,那么后台已经成功返回了你需要的结果。
5、如果没有alert()呢,程序就会瞬间完成,去执行下面的js代码。而实际上ajax调用后台的程序还没有返回你要的结果,当然取不到数值了。解决方法:后面的函数执行时,你可以在settimeout函数里面写,设置一个 1000ms 的延迟时间,一般后台都可以把数据返回到ajax里面了。=== 结贴,给分 ===
得到满意的答案,立即结贴给分,是一种良好的习惯和美德
随让你非要写这个需求呢?你要得到他,就得付出时间!那就是延迟。
=== 结贴,给分 ===
得到满意的答案,立即结贴给分,是一种良好的习惯和美德