为什么以下javascript在InternetExplorer&Mozilla,但在谷歌chrome中运行良好
Why following javascript is not working in Internet Explorer & Mozilla but works fine in google chrome?
我在javascript中获取会话属性,然后在if-else中使用它。假设每当用户的一些锚点标记单击锚点标记时,脚本就会运行。
<a id="someId" href="/someurl" onClick="checkSession(this.id)">Link</a>
<a id="someOtherId" href="/someurl" onClick="checkSession(this.id)">Link2</a>
体内
<script type="text/javascript">
function checkSomething(clickedId){
event.preventDefault();
var value= <%=(int) session.getAttribute("key")%>;
if(value != -1){
window.location = $('#'+clickedId).attr('href');
}else {
alert("Please Select a value first then click on the link.");
$("#someInput").focus();
}
};
</script>
脚本在chrome上完美运行,但在mozilla和IE上失败。在mozilla上,我可以看到锚标记已经与该javascript绑定,但它没有运行。
传入事件而不是ID。此外,您不需要jQuery来获取元素的href
。只需使用香草JavaScript:
<a id="someId" href="/someurl" onClick="checkSession(event)">Link</a>
<a id="someOtherId" href="/someurl" onClick="checkSession(event)">Link2</a>
<script>
function checkSession(event) {
event.preventDefault();
var clickedId = event.target.id;
var href = event.target.href;
// etc
}
</script>
您也可以:
<a id="someId" href="javascript:checkSession('/someurl')">Link</a>
<a id="someOtherId" href="javascript:checkSession('/someOtherurl')">Link2</a>
<script>
function checkSession(url) {
var value= <%=(int) session.getAttribute("key")%>;
if(value != -1){
window.location = url;
} else {
alert("Please Select a value first then click on the link.");
$("#someInput").focus();
}
}
</script>
相关文章:
- .scroll()函数在上次更新后在谷歌chrome中定位闪烁
- 如何让JS脚本在导航后继续运行(谷歌chrome控制台)
- 如何知道你右键点击谷歌chrome扩展是什么
- 对齐底部的DIV-谷歌Chrome扩展
- 谷歌cookie是否存在于chrome,火狐,即在phantomjs中发出某些请求时发送的浏览器
- 当我用ctrl+p搜索时,为什么要在谷歌chrome上使用inspect来调试缺少显示文件js
- 从谷歌chrome中的任何网页获取所有tel标签
- 如何缩小我的谷歌chrome扩展's的javascript文件
- 当页面加载时,使谷歌chrome浏览器成为全屏浏览器
- 谷歌Chrome元素仍然存在:即使从光标移开,也要悬停
- 谷歌Chrome Chrome.usb/Chrome.hid锁定设备
- 我的jquery代码在谷歌chrome控制台中工作,而不是在保存它之后
- 谷歌Chrome扩展在用Javascript打开的弹出窗口中工作吗
- 基本的谷歌chrome扩展消息传递不起作用
- 如何操作谷歌chrome's PRINT选项
- 谷歌Chrome在范围滑块禁用时卡住了's的更改功能
- 谷歌Chrome日期选择器事件
- 如何允许在谷歌chrome中通过触摸屏放大和缩小iframe
- 谷歌chrome和FPS的奇怪行为
- pin不显示在Chrome谷歌地图Api V3