我正在制作一个程序,其中所有文本框都通过CSS转换为大写。在我的Javascript中,我想将它传递给服务器,其值与UPPERCASE相同。但是,我遇到了一个错误:
“未捕获的TypeError:无法读取未定义的属性'toUpperCase”
我已经尝试过来自StackOverFlow的不同用户的不同解决方案,例如Uncaught TypeError: Cannot read property 'toUpperCase' of undefined,但仍然是错误。
这是我的代码:
// put all gathered data in an array variable so as to send to the server for saving
var param = new Array();
param[0] = clientType;
param[1] = catv_provider;
param[2] = existing_subs;
param[3] = gender;
param[4] = lastname;
param[5] = firstname;
param[6] = midname;
var param2 = [];
for (var i = 0; i < param.length; i++) {
param2[i] = param[i].toUpperCase();
}
答案 0 :(得分:3)
这是因为你获得了价值undefined
。
您可以将循环修改为
for (var i = 0; i < param.length; i++) {
if(typeof(param[i])!=="undefined") { //skipping undefined
param2[i] = param[i].toUpperCase();
}
}
答案 1 :(得分:0)
尝试以下
for (var i = 0; i < param.length; i++) {
if(param[i] != null){
param[i].toUpperCase();
}
}