以下 JavaScript 似乎在 Firefox 中有效,但在 Chrome 中无效?
Posted
技术标签:
【中文标题】以下 JavaScript 似乎在 Firefox 中有效,但在 Chrome 中无效?【英文标题】:The following JavaScript seems to be working in Firefox but not on Chrome? 【发布时间】:2012-10-22 14:10:52 【问题描述】:我是网页设计/开发的新手;我有以下代码来检查是否在文本框中输入了数据。 javascript 检查是否添加了数据,如果没有输入会报错?
此脚本适用于 FireFox,但不适用于 Google Chrome。错误消息不会出现,数据会直接添加到数据库中。
<script type="text/javascript">
function validate()
if(
document.vulcanoForm.device_name.value == "" ||
document.vulcanoForm.muid.value == "" ||
document.vulcanoForm.map_version.value == "0.000")
alert("Please fill out all fields before clicking submit!");
return false;
else
alert("Hold on just adding to database :)");
return true;
</script>
<body>
<a href="index.xhtml"> Mogadishu </a> <br/>
<form action="vulcanoprocess.php" method="post" onsubmit="return validate()" name="vulcanoForm">
<fieldset>
<legend>Device Information</legend>
<label for="device_name">Device Name:</label><br />
<input type="text" name="device_name" id="device_name" /><br />
<label for="muid">MUID:</label><br />
<input type="text" name="muid" id="muid" /><br />
</form>
</body>
【问题讨论】:
在 else 中返回 false,并尝试打印/警告值并查看差异。 刚刚尝试过,但不幸的是没有用。不断将数据添加到数据库中 为我工作 - jsfiddle.net/GeGpv @ZoltanToth 刚刚在 jsfiddle 上尝试过,对我也有用,但在 Google Chrome 上不起作用? 你有提交按钮吗?这个小提琴似乎在 chrome 中工作。 jsfiddle.net/PadMw/1 【参考方案1】:要进行调试,请将 FireBug 用作 Firefox 插件并选择 javascript 选项卡以查看错误或“控制台”。使用该信息来修复代码中的错误,并在它们消失时在 chrome 中测试脚本。如果还是有错误,可能是chrome浏览器缺少某种类型的js兼容。
【讨论】:
嘿不知道是什么导致了使用firebug时的错误然后发现这是javascript和chrome的兼容性问题。不过感谢您的提示 很高兴能帮上忙,如果我愿意的话。 :)【参考方案2】:Onsubmit doesn't work in Chrome
当你用谷歌搜索“google chrome onsubmit javascript”时要阅读很多内容
编辑添加
<html>
<head>
<script type="text/javascript">
function validate()
if(
document.getElementById('device_name').value.trim() === "" ||
document.getElementById('muid').value.trim() === "" ||
document.getElementById('map_version').value.trim() === "0.000"
)
alert("Please fill out all fields before clicking submit!");
return false;
else
alert("Hold on just adding to database :)");
return true;
</script>
<title></title>
</head>
<body>
<a href="index.xhtml">Mogadishu</a><br>
<form action="vulcanoprocess.php" method="post" onsubmit="return validate()" name="vulcanoForm">
<fieldset>
<legend>Device Information</legend> <label for="device_name">Device Name:</label><br>
<input type="text" name="device_name" id="device_name"><br>
<label for="muid">MUID:</label><br>
<input type="text" name="muid" id="muid"><br>
<input type="submit">
</fieldset>
</form>
</body>
【讨论】:
谢谢 .. 我现在就读一下 .. 对我的代码有什么建议吗? 第二个警报出现了吗? 它可以在 Firefox 上运行,但不能在 Chrome 上运行。如果没有出现第二个警报,那也没关系 表示js某处有错误;可能是因为您没有 map_version 输入。在我的机器上,我将您的 document.vulcanoForm.device_name.value 样式行更改为 document.getElementById('device_name').value.trim() 等,它在 chrome 中工作。 当我将代码粘贴到此处时,我在创建表单时将 map_version 取出以缩短它,但在那里它不起作用..您可以将编辑后的代码发送给我吗在你的 Chrome 上工作?以上是关于以下 JavaScript 似乎在 Firefox 中有效,但在 Chrome 中无效?的主要内容,如果未能解决你的问题,请参考以下文章
使用 JavaScript 裁剪图像适用于 IE,但不适用于 Firefox [重复]