2016-08-28 11 views
-1

私は、左側にいくつかのリスト項目があり、垂直方向に整列しています。私は空になっている右側のコンテナに、そのリスト項目の特定のIDのURLからの情報を入力するようにしています。私はload()を使用してjQuery関数を作成することができました。リスト項目内をクリックするとデータが右側のコンテナに挿入されましたが、最小のIDのデータだけです。他のリストアイテムをクリックすると、右のコンテナのデータは変更されません。現時点では、このコード行を追加して、アラートに使用予定のリンクが表示されているかどうかを確認するために、このコード行を追加しました。リストアイテム内をクリックすると、アラートに「Undefined」と表示されます。 :(動的リスト項目を作成しようとしています。 jQuery

リスト項目内にリンクを追加しようとしましたが、正しいデータが表示されますが、毎回現在のページを表示していて、右側のコンテナには表示されませんすべてで、前のページに今ある

が適切なリスト項目に割り当てられた固有の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

あなたのLiはhref属性を持っていませんでした。 $( 'li> a')を使用してください。(...) –

答えて

0

イベントハンドラを割り当てると、がドキュメントにありません。委任された処理を使用する必要があります。あなたが探している属性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

関連する問題