3 回答
TA贡献1875条经验 获得超3个赞
你把你的数组返回值中间用个符号分割,比如分号["a1","b1"];["a2"',"b2"],然后用split{";"}进行分割就可以分开使用了。
var t = "['a1','b1'];['a2'','b2']";
var ts = t.split(";");
alert(ts[0]);
alert(ts[1]);
下面这个写法写错了
function initialize(cc) {
var html;
$.post("some1.php",{value:cc},function(data){var html=data;},"json");
alert(html);
}
不应该在function(data)里面申明var html,否则html会变成这个方法的体局部变量。你应该改成。
function initialize(cc) {
var html;
$.post("some1.php",{value:cc},function(data){html=data;},"json");
alert(html);
}
但是即便这样改了,alert(html)仍然是空。
你还没有搞清楚ajax的逻辑。ajax是异步的。function(data)里的内容是延迟执行,在你最后alert(html)的时候,function(data)还没有执行,所以alert(html)永远是空。
TA贡献1909条经验 获得超7个赞
function initialize(cc) {
var html;
//加上这句
$.ajaxSettings.async=false;
$.post("some1.php",{value:cc},function(data){var html=data;},"json");
alert(html);
}
添加回答
举报