Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/85.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用jquery取消href不起作用_Jquery_Href - Fatal编程技术网

使用jquery取消href不起作用

使用jquery取消href不起作用,jquery,href,Jquery,Href,我正在尝试删除指向的确定类的链接,以便改为执行Javascript(onclick等)(如果是corse,则启用Javascript)。这就是为什么我希望在源代码中保留href。无论如何,我正在尝试: <script type="text/javascript"> $(document).ready(function() { $('.remove').attr('href', '#'); }); </sc

我正在尝试删除指向的确定类的链接,以便改为执行Javascript(onclick等)(如果是corse,则启用Javascript)。这就是为什么我希望在源代码中保留href。无论如何,我正在尝试:

<script type="text/javascript">

        $(document).ready(function() {
                   $('.remove').attr('href', '#');
        });

</script>

$(文档).ready(函数(){
$('.remove').attr('href','#');
});
但是它没有:S

尝试一下这个

$('.remove').removeAttr('href');
href
设置为一个空白片段
#
是一种不好的做法,既不规范又难看。它通常会使浏览器跳转到页面顶部

或者,使用您的单击处理程序,您可以

$('a').click(function(event) {
   event.preventDefault();
});

您也可以
返回false

我有点理解您试图做什么,正确的方法是不删除#href,我不建议返回false,因为您将无法传递jQuery对象:

$(document).ready(function() {
   $("#anchorId").click(function(event){
     event.preventDefault();
     //do stuff
   });
});

只需添加推荐的event.preventDefault()作为事件处理程序的最后一行。 您不需要更改href值

根据您的代码:

    $(document).ready(function() {
               $('.remove').click(function(event) {
                       // your Javascript stuff

                       // Most import jquery line
                       event.preventDefault();
               }
    });

要使其更简单,只需使用HTML:

<a href="http://stackoverflow.com" onclick="return false;">Stack Over Flow</a>

如果你想做一个JS,用函数

<script type="text/javascript">
 function RemoveHREF(type){
  $(type).attr('href', '#');
 }
</script>

函数RemoveHREF(类型){
$(type).attr('href','#');
}
你的HTML应该是

<a href="http://stackoverflow.com" class="URL5">Stack Over Flow</a>

现在调用函数

<script type="text/javascript">
 $(document).ready(function() {
  RemoveHREF('.URL5');
 });
</script>

$(文档).ready(函数(){
RemoveHREF('.URL5');
});

锚定是否有初始值?
$('.remove').attr('href','#')
将替换
href
to#的值,从而在链接中生成
href=“#”
。是否希望它删除href?我同意使用event.preventDefault()但是你能解释一下返回false而不传递jQuery对象是什么意思吗?那么如果我按原样发布,onclick=”“下的函数会被执行吗?这就是我正在尝试的。删除href以便执行onclick而不是
event.preventDefault();
不必是最后一行,事实上,我通常会将其作为第一行,因此很明显默认行为不会被调用。因此,如果我按原样发布,onclick=“”下的函数会不会将被执行?这就是我正在尝试的。删除href以便执行onclickinstead@ToniMichel Caubet是的,应该是这样。但是在没有看到你所有的代码的情况下,我需要做一些假设。