【问题标题】:pushing jquery var data into javascript alert将 jquery var 数据推送到 javascript 警报中
【发布时间】:2017-06-21 08:06:13
【问题描述】:

json 响应被接收并显示给用户 它可以正常工作,但是如果我想显示 javascript 警报,它就无法正常工作。

在初始页面加载期间 var 为空,所以我不希望处理它,所以如果 var 为空,我禁用了 javascript 处理,但是当上传表单并返回 json 数据时,它不为空且格式正确的 json 数据可见在值 { x: 3, y: 33.6 },{ x: 4, y: 92.6 },{ x: 5, y: 121.2 } 但是当我尝试用 javascript 提醒同样的事情时它不起作用 我总是收到空消息永远不会完成消息。

    <script>   
$(document).ready(function() {
        var ndhtml =[];

    if(ndhtml.length==0)
    {
    alert('empty string')   
    }

    else

    {


var kkpppf=$("#chek").html(ndhtml);
alert('done');
    }
});

</script>

任何建议如何在这里更新 json 数据都会很棒。 第一个 js 文件是外部文件,该文件的代码是

$(document).ready(function() {
    (function() {
        $('#upload-form2').ajaxForm({
            dataType: 'json',
             success: function(data) {
                var ndhtml = '',
                    downlo;
                for (var i = 0; i < data.length; i++) {
                    downlo = data[i];
                    ndhtml += '' + downlo.ndchart + '';
                }
              $('#chek').html(ndhtml);
               }
        })
    })();
  });

【问题讨论】:

  • 看起来第一个脚本设置了 ndhtml,而第二个脚本重置了它。您需要删除 var ndhtml =[];
  • @SpaceCowboy 然后 chrome consol 给出错误。未定义的ndhtml
  • 确保您拥有正确的范围。这可能会有所帮助:stackoverflow.com/questions/2932782/…
  • @SpaceCowboy 似乎是我的问题。让我试试看是否有效
  • 您需要在success: 回调中添加警报 - 当页面第一次加载时它总是为空的,因为它还没有时间设置它。 stackoverflow.com/questions/14220321/…

标签: jquery html css json


【解决方案1】:

请尝试下面提到的代码,它将对您有很大帮助,

var ndhtml = {}; //Default ndhtml empty object

$(document).ready(function($) {
    //updateHtml(); //call update function

    $('#upload-form2').ajaxForm({
        dataType: 'json',
        success: function(data) {
            ndhtml = data; //Initialize ajax success data to ndhtml
            updateHtml(); //again call same function to set HTML
        }
    });
});



var updateHtml = function(){

    if(ndhtml.length > 0) //Check the ndhtml variable length
    {   
        var html = "";
        ndhtml.each(function(index, el) { //looping each element of ndhtml
            html += '' + el.ndchart + ''; // Append ndchart varibale to html variable
        });

        $('#chek').html(html); //Prepared html append to selected element
    }
    else
    {
        alert("Empty"); //If ndhtml is empty than show alert box
    }
}

【讨论】:

  • 我已经更新了我的代码,请再试一次,你所有需要的代码都在这里,这取决于你如何根据你的要求来实现。
  • 第一个 js 文件是外部文件,您将两个文件的代码合并到一个文件中,由于某些限制,我们最终不允许这样做
  • 您只需在全局范围内定义var ndhtml = {};...这样您就可以从任何文件访问,并轻松维护您的代码
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2021-11-22
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-06-25
  • 2022-11-10
  • 1970-01-01
相关资源
最近更新 更多