更改数组中的第一个字符

时间:2014-09-29 09:43:45

标签: javascript jquery arrays

我正在尝试使用for循环我的数组并更改第一个字母,如果它是一个特定的字母,问题是循环只适用于第一个数组元素。

如果数组是A123, A345, A567,那么它只会更改A123 To L123

这是我的代码

$("#at").click(function() {
   var str= $("#field").val();
   var res = str.split(" ");

    var index =0;
    for (index= 0; index<res.length; index++) {


        if (res[index].substring(0,1) =='A') { 
       res[index] = res[index].substring(1);
       res[index] = "L" + res[index]; 

}

  }

 $("#field").val(res);

我仍然是JQuery的新手,所以如果有更好的方法来做到这一点,请帮助

1 个答案:

答案 0 :(得分:2)

您的res数组正确设置为["L123,", "L345,", "L567"]

当您尝试使用$("#field").val(res)输出此值时,您将#field的值设置为数组,该数组具有不可预测的结果(并且可能会有不同的跨浏览器)。值应为字符串。

请尝试使用最后一行:

$("#field").val(res.join(" "));

将在显示之前将数组连接回字符串。

Working JSFiddle