Jquery - 使用"this"获取属性

use*_*853 8 javascript jquery this

这可能是非常容易的事情,但我似乎无法让这个工作,我不知道为什么.我安装了jquery,当我点击它时,我试图获得"this"元素的属性.现在我的代码看起来像这样:

url = $(this).attr("href")
Run Code Online (Sandbox Code Playgroud)

当我通过单击链接调用此函数时,它告诉我var"url"未定义.所以当我点击链接时,显然它没有拿起"这个".我试图传递一个锚标记的href用作我的变量.

我在俯瞰什么?再说一遍,我知道这很简单,但我似乎无法弄清楚,所以谢谢你花时间来帮助我.

谢谢.

<script type="text/javascript">
url = "push1";

$("a").live("click", function(event) {
    event.preventDefault();     
    url = $(this).attr("href");
})
$.ajax({
    type: "get",
    url: "/"+url+".php",
    data: "",
    dataType: "html",
    success: function(html){
        jQuery('#Right_Content').hide().html(html).fadeIn(1000);
    },

})
;
</script>
Run Code Online (Sandbox Code Playgroud)

HTML:

<body>

<a href="push1" >Image 1</a>
<a href="push2" >Image 2</a>  

<div id="Right_Content"></div>

</body>
Run Code Online (Sandbox Code Playgroud)

Shy*_*yju 9

这应该适合你

$(function(){    
    $(".link").click(function(){
       var url=$(this).attr("href");
       alert(url);
        return false;

    });       

});?
Run Code Online (Sandbox Code Playgroud)

假设您使用名为"link"的css类定位所有锚标记

以下是工作示例:http://jsfiddle.net/L99mM/2/

编辑:根据您在问题中发布的代码

你应该在你的ajax调用之后调用preventDefault.并且在ajax调用之后应该有结束括号

$("a").live("click", function(event) {      
      var targeturl = $(this).attr("href");

      $.ajax({
               type: "get",
               url: "/"+targeturl +".php",
               data: "",
               dataType: "html",
               success: function(html){
                   jQuery('#Right_Content').hide().html(html).fadeIn(1000);
               }

           });  // closing for  ajax
        event.preventDefault(); 

  });  // closing for click  event binding 
Run Code Online (Sandbox Code Playgroud)