2016-08-28 4 views
-1

왼쪽에 세로로 정렬 된 몇 가지 목록 항목이 있습니다. 비어있는 오른쪽 컨테이너가 해당 목록 항목의 특정 ID에 대한 URL의 정보로 채워지도록하려고합니다. load()를 사용하여 jQuery 함수를 만들 수 있었고 목록 항목을 클릭 할 수 있었고 데이터가 올바른 컨테이너에 채워지지만 가장 작은 ID의 데이터 만있었습니다. 다른 목록 항목을 클릭하면 오른쪽 컨테이너의 데이터가 변경되지 않습니다. 현재이 코드 줄을 사용하여 경고 기호에 해당 링크가 표시되는지 확인하려면동적 목록 항목을 만들려고합니다. jQuery

var strReqUrl = $(this).attr('href'); 
alert(strReqUrl); 

을 추가했습니다. 목록 항목을 클릭하면 경고에 "정의되지 않음"이라고 표시됩니다. : (

목록 항목 내에 링크를 추가하려고했지만 올바른 데이터가 표시되지만 매번 내 현재 페이지를보고 오른쪽에있는 컨테이너에 채워지지 않습니다. . 이전 페이지에서 지금하는 모든에서

적절한 목록 항목에 할당 된 적절한 ID를 얻을 어쨌든 여기

내 HTML입니다 :

<!DOCTYPE html> 
<html> 
    <head> 
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script> 
    <script type="text/javascript">  
    $(document).ready(function(){ 
     $("li").click(function(){ 
      var strReqUrl = $(this).attr('href'); 
      alert(strReqUrl);    
    //$("#divId").load("pm_message.php?u=<?php echo $log_username; ?>&pmid=<?php echo $pmid; ?> #pm_post"); 
     }); 
    }); 
    <body> 
    <div class="wrapper"> <!--Left and Right container wrapper--> 
    <div class="container"> 
    <div class="left"> 
     <!--left container--> 
     <div class="top"> 
     <input type="text" /> 
     <a href="javascript:;" class="search"></a> 
     </div> 
     <ul class="people"> 
     <a href="pm_message.php?u=<?php echo $log_username; ?>&pmid=<?php echo $pmid; ?>"><?php echo $people; ?></a> <!--generates list of people--> 
     </ul> 
    </div> 
    <div class="right" id="right"> 
     <!--Right container--> 
     <div class="top"><span class="name"></span></div> 
     <div id="divId"></div> 
    </div> 
    </body> 
</html> 

그리고 스크립트

//DB connection 
    //Collecting data from db 
    //Variable $people collects data for the people listed in the left container 
    $people = ' 
       <li class="person"> 
        <a id="a" href="pm_message.php?u='.$log_username.'&pmid='.$pmid.'"><span class="name">'.$sender.'</span></a> 
          <!--<span class="name">'.$sender.'</span>--> 
          <span class="time">'.$time.'</span> 
          <span class="preview">'.$message.'</span> 
       </li>'; 
+1

귀하 리는 href 속성을 가지고 있지 않았다. $ ('li> a')를 사용하십시오. (...) –

답변

0

이벤트 처리기를 할당 할 때 l이 문서에 없습니다. 위임 된 처리를 사용해야합니다. 그리고 찾고있는 href 속성이 없습니다. 이 시도 :

$('ul').on('click', 'li', function() { 
    var strReqUrl = $(this).find('a').attr('href'); 
    alert(strReqUrl); 
}); 

더보기 - http://api.jquery.com/on/

+1

을 클릭하십시오. 이미 서버 측에서 생성되었습니다. 귀하의 코드는 여기에서 작동하지 않습니다. li은 href 속성이 없습니다. –

+0

도움을 주셔서 감사합니다. 웬일인지 아무것도 일어나지 않고있다. 나는 계속 놀거야. – Millica

관련 문제