为什么if出现在第28和39行(这个javascript的if( clas == 1)和if( clas ==2 )总是错误的)?如果我用其他的代替第二个。每次都会被执行。我已经尝试过==和===,我也尝试将1和2作为字符串,同时使用和不使用clas = parseInt(cla)。
// JavaScript Document
var seat = new Array()
var fclass
var econ
var flight
var totseats
function init( seats, firclass, econo, flightnum )
{
seat[0] = 'crew'
fclass = firclass
econ = econo
flight = flightnum
totseats = seats
for( var count = 1; count <= seats; count++ )
{
seat[count] = 0;
};
};
function reservation()
{
var cla = document.getElementById('class').value;
var name = document.getElementById('first').value;
name += ' ';
name += document.getElementById('last').value;
clas = parseInt(cla)
if( clas == 1 )
{
for( var seatnum = 1; seatnum < econ; seatnum++)
{
if( seat[seatnum] == 0 )
{
seat[seatnum] = name
break;
}
}
}
if( clas == 2 )
{
for( var seatnum = econ; seatnum < totseats; seatnum++)
{
if( seat[seatnum] == 0 )
{
seat[seatnum] = name
break;
}
}
};
pticket( name, seatnum );
};
function pticket( name, seatnum )
{
document.getElementById('tname').innerHTML = name;
document.getElementById('flight').innerHTML = 'Flight: ' + flight;
document.getElementById('seat').innerHTML = seatnum;
if( seatnum < econ )
{
document.getElementById('class').innerHTML = 'First Class';
}
else
{
document.getElementById('class').innerHTML = 'Economy';
}
};http://jsfiddle.net/FB26t/1/ p.s.jsfiddle根本不运行脚本,但它确实作为一个实际的网页正常运行
发布于 2013-11-09 02:44:20
带有id类的元素不是您的<select>。怪不得。类<select>元素具有id选择。
此外,您还应该为radix函数指定parseInt参数,因为在所有浏览器中,缺省值不是10。
//and do not forget the var statement if you want a local variable
var clas = parseInt(cla, 10); 小提琴
发布于 2013-11-09 02:44:43
我已经放了document.getElementById('class').value,但是对应的元素实际上是document.getElementById('select')
https://stackoverflow.com/questions/19871741
复制相似问题