因此,我的页面上有一行Javascript:
form.display.value = 'Error';其中显示是在我的页面上输入的文本类型:
<input type="text" id="calcDisplay" name="display" maxlength="25">在Chrome中,这很好地使输入元素的值变为"Error“。但是在IE 10和Firefox中,输入的内容如下:
function Error() { [native code]}有人能解释这是怎么回事吗?为什么?
更新:这是正在调用的实际函数:
function compute(form) {
try {
form.display.value = eval(form.display.value);
} catch(e) {
form.display.value = 'Error';
}
}这是它的视频,所以你们不会认为我疯了:
发布于 2013-09-06 21:03:46
当值Error已经在输入中时,这一行:
form.display.value = eval(form.display.value);...is将计算到您前面定义的函数Error。因此,这必须发生在对compute函数的第二次调用中。
请注意,浏览器与eval的工作方式不一致,这就是您看到浏览器差异的原因。
https://stackoverflow.com/questions/18666315
复制相似问题