Jquery变量赋值不起作用

时间:2013-11-19 15:27:48

标签: jquery

当我尝试提醒loadpagename时,它显示未定义的

的jQuery

$(document).ready(function() { 
    $('li').click(function() {
        var pagename=$(this).text();

        if(pagename == "home")
        {
            var loadpagename="home.php";
        }

        alert(loadpagename);
        $("#content").load(lodpagename);
    });
});

HTML

<div id="navbar">
   <ul>
     <li>
        home
     </li>
     <li> 
        about us
     </li>
     <li>
        contact
     </li>
   <ul>
 <div id="content">
   dddd
 </div>

3 个答案:

答案 0 :(得分:1)

这种情况正在发生,因为您的li内容包含一些间距字符,例如制表符和换行符,因此其值不是完全 "home"。您可以使用jQuery的trim函数删除这些额外的空格,然后进行比较。

var pagename = $.trim($(this).text());

小提琴:http://jsfiddle.net/PaAD7/2/

答案 1 :(得分:0)

lodpagename未定义

使用:

$("#content").load(loadpagename);

而不是:

$("#content").load(lodpagename);
                     ^

答案 2 :(得分:0)

错误错误:  $("#content").load(lodpagename);$("#content").load(loadpagename);

工作代码:

<!doctype html>
<html lang="en">
<head>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.5.0/jquery.min.js"></script>

<script type="text/javascript">
  $(document).ready(function(){

    $('li').click(function() {

    var pagename=$(this).text();

    if(pagename == "home")
    {
    var loadpagename="home.php";
    }

    //alert(loadpagename);
        $("#content").load(loadpagename);
     });
     });
</script>


</head>

    <body>
    <ul>
        <li>home</li>
        <li>about</li>
    </ul>
<div id="content">Hello World</div>
      </body>
</html>