Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/446.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 为什么我的.text()操作在AJAX调用后不起作用?_Javascript_Jquery_Ajax_Join_Split - Fatal编程技术网

Javascript 为什么我的.text()操作在AJAX调用后不起作用?

Javascript 为什么我的.text()操作在AJAX调用后不起作用?,javascript,jquery,ajax,join,split,Javascript,Jquery,Ajax,Join,Split,为什么我的split和join不起作用 $.getJSON(url, function (data) { // create ".tags" elements and populate them with data }); $(".tags").text(function (i, val) { return val.split(",").join(", "); }); 我只想在每个,“(逗号)之后添加空格。由于$是异步调用,您需要在$的回调方法中执行操作。getJSON $.g

为什么我的
split
join
不起作用

$.getJSON(url, function (data) {
    // create ".tags" elements and populate them with data
});
$(".tags").text(function (i, val) {
   return val.split(",").join(", ");
});


我只想在每个,“(逗号)之后添加空格。

由于
$是异步调用,您需要在
$的回调方法中执行操作。getJSON

$.getJSON('http://www.json-generator.com/api/json/get/bXClHuexaq?indent=2', function (data) {
  //... your code

    $(".tags").text(function (i, val) {
        return val.split(",").join(", ");
    });
 });

由于
$.getJSON
是异步调用,您需要在
$.getJSON
的回调方法中执行您的操作

$.getJSON('http://www.json-generator.com/api/json/get/bXClHuexaq?indent=2', function (data) {
  //... your code

    $(".tags").text(function (i, val) {
        return val.split(",").join(", ");
    });
 });

正如Satpal提到的,使用$.getJSON是必需的

$.getJSON(url, function (data) {
    // code
    $(".tags").text(function (i, val) {
        return val.split(",").join(", ");
    });
 });
然而,作为一种常规做法,我建议改用正则表达式,主要是因为对于较长的字符串,数组需要更多的内存

$(".tags").text(function(i, val) {
    return val.replace(/,/g, ", ");
});

正如Satpal提到的,需要使用$.getJSON

$.getJSON(url, function (data) {
    // code
    $(".tags").text(function (i, val) {
        return val.split(",").join(", ");
    });
 });
然而,作为一种常规做法,我建议改用正则表达式,主要是因为对于较长的字符串,数组需要更多的内存

$(".tags").text(function(i, val) {
    return val.replace(/,/g, ", ");
});

将分割逻辑放在回调中

$(文档).ready(函数(e){
$.getJSON('http://www.json-generator.com/api/json/get/bXClHuexaq?indent=2,函数(数据){
var输出=”;
输出+=“”;
输出+=“+”标记“+”;
输出+=“+”朋友“+”;
输出+=“”;
用于(数据中的var i){
输出+=“”;
输出+=“”+数据[i]。标记+“”;
输出+=“”;
对于(var j=0;j
将拆分逻辑放在回调中

$(文档).ready(函数(e){
$.getJSON('http://www.json-generator.com/api/json/get/bXClHuexaq?indent=2,函数(数据){
var输出=”;
输出+=“”;
输出+=“+”标记“+”;
输出+=“+”朋友“+”;
输出+=“”;
用于(数据中的var i){
输出+=“”;
输出+=“”+数据[i]。标记+“”;
输出+=“”;
对于(var j=0;j
在从JSON响应中获得任何结果之前,您要将其拆分。使用AJAX是一个非常重要的细节,不必考虑。@GoodSp33d实现略有不同,但概述了问题和解决方法solution@Era因为你漏掉了最重要的details@Era没有人会因为你问了一个已经过时的问题而责怪你以前被问过(事实上,这个问题几乎每天都被问);但重要的是,就是编写最小的代码来重现问题本身。在从JSON响应中得到任何结果之前,您要先拆分它。使用AJAX是一个非常重要的细节,不必考虑。@GoodSp33d实现略有不同,但概述了问题和solution@Era因为你漏掉的最多重要的details@Era没有人会因为你问了一个以前被问过的问题而责怪你(事实上,这个问题几乎每天都被问);不过,重要的是编写最小的代码来重现问题本身的问题。@Darren,这有点苛刻。OP没有将所有相关信息包括在他们的报告中post@Darren你说L2R是什么意思?@RajaprabhuAravindasamy@Darren这有点苛刻。OP没有将所有相关信息包括在他们的报告中post@Darren你说L2R是什么意思?@RajaprabhuAravindasamy