-1

根据我通过返回的数据.getJSON(),我将构建 html 以附加到 div。

是否添加某些部分取决于某些成员是否包含有价值的值。例如,如果修剪后的 data.bla 小于 10 个字符,我会将其排除在等式之外/不会将其添加到动态创建的 html 中。

我的伪 jQuery 是这样的:

var htmlBuilder;
....
$.getJSON()....each() {
    if (data.someURL.trim().length > 10) {
        htmlBuilder += '<a href=\"...';
    }
}

...但这是首选的方法吗?

4

2 回答 2

1

最好使用$.trim代替.trim()方法,因为后者在 IE 8 及更低版本中不起作用。

在调用方法之前最好检查空条件。

var str = data.someURL;
if (str && $.trim(str).length > 10) {
于 2013-07-02T19:12:22.433 回答
1

这看起来不错。不过我会做var htmlBuilder = '';的。如果你这样做var htmlBuilder; htmlBuilder += 'bar';,你会得到"undefinedbar".

这是我的代码的样子:

var html = '';
$.getJSON('/path', function(results){
  $.each( results, function(i, result){
    if( $.trim(result.url.length) > 10 ){
      html += '<a href="#">Testing</a>';
    }
  });
  $('#results').append(html);
});
于 2013-07-02T19:10:58.237 回答