IE中的javascript无效(0)问题

IE中的javascript无效(0)问题,javascript,internet-explorer,Javascript,Internet Explorer,嗨 我正在使用asp.net开发一个网页 我正在使用我的网页中的一些链接。为此,我使用了一些类似这样的代码 <a href="javascript:void(0);" onclick="javascript:ChangeLoc('TEST','');">Test</a> 你有错误吗?如果是这样,IE6中会出现什么错误?你能发布ChangeLoc()的代码吗?此外,请尝试将标记更改为以下内容,并查看是否得到相同的结果: <a href="#" onclick="Ch

我正在使用asp.net开发一个网页

我正在使用我的网页中的一些链接。为此,我使用了一些类似这样的代码

<a href="javascript:void(0);" onclick="javascript:ChangeLoc('TEST','');">Test</a>

你有错误吗?如果是这样,IE6中会出现什么错误?你能发布ChangeLoc()的代码吗?此外,请尝试将标记更改为以下内容,并查看是否得到相同的结果:

<a href="#" onclick="ChangeLoc(); return false;">Test</a>


Edit:从onclick中删除了“javascript:”href和onclick都被触发当您单击一个元素时,您正在用void()覆盖onclick事件

改为

<a href="#" onclick="ChangeLoc();return false">test</a>

在javascript函数调用中使用
-元素是不好的。
使用styled
..

您还可以使用不引人注目的javascript语法:

<a href="index.html" id="chngLink">test</a>

<script type="text/javascript">
document.getElementById("chngLink").onclick = function(e) {
    if (e && e.preventDefault) {
        e.preventDefault();
    }
    ChangeLoc('TEST','');
    return false;
};
</script>

document.getElementById(“chngLink”).onclick=function(e){
如果(e&e.preventDefault){
e、 预防默认值();
}
ChangeLoc(‘测试’,“”);
返回false;
};

您的ChangeLoc()函数是什么样子的?这让我想到。。。为什么有三个阵营的人使用Java和javascript?一个喜欢在href中使用javascript:[这里的代码],另一个喜欢在onclick中使用void(0)和所有代码,然后还有#……有四个阵营。你描述的三个人,以及正确使用渐进增强的小组:不,没有任何错误。如果我更改了空隙(0),则效果良好。我在问这是IE的bug还是void(0)的问题亚当:onclick中没有javascript:前缀的必要或用途。这使得使用非定点设备(键盘、呼吸开关等)的人无法访问它。链接或按钮是最好的选择(采用渐进增强原则设计)。对不起,lol什么?按钮的设计目的是获得焦点,点击、触摸等等。使用按钮。链接用于将浏览器重定向到浏览器历史记录页面中的另一个可标记位置。如果您将它用于javascript,那么您就理解错了。您应该避免使用“onclick”属性,并且通常在“href”或任何其他属性中编写javascript。最好在外部添加事件侦听器,并保持html代码的整洁。
$(function(){
  $("#linkId").click(function(event){
      ChangeLoc();
      event.preventDefault();
  });
}); 
<a href="index.html" id="chngLink">test</a>

<script type="text/javascript">
document.getElementById("chngLink").onclick = function(e) {
    if (e && e.preventDefault) {
        e.preventDefault();
    }
    ChangeLoc('TEST','');
    return false;
};
</script>