繁体   English   中英

无法在JavaScript中获取字符串的子字符串

[英]Cannot get the substring of a String in JavaScript

当内容长度超过120个字符时,我试图从变量获取子字符串。

$.ajax({
          url: url,
          dataType: 'json',
          async: false,
          success: function(data){
              $.each(data, function(i, item) {
                      var name = item.name;
                      var itemId = item.itemId;

                    if(name.length >= 120) {
                        selectHTML += '<option value=' + itemId + '>' + name.substr(0, 120) + '</option>';
                      } else {
                      selectHTML += '<option value=' + itemId + '>' + name + '</option>';
                    }
            });
          }
    });

但结果,我总是这样:

name is undefined

当我没有substring() ,它可以正常工作。 有什么建议么?


编辑:在此行上引发错误:

if(name.length >= 120) {

尝试将if (name.length >= 120)更改为if (name && name.length >= 120)

该错误意味着item之一不包含name

使用console.log(data)弄清楚您实际上收到了什么-JavaScript代码没有什么错。

如果您无法更改服务器端代码,则可以使用空名称:

var name = item.name || '';

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM