0
<table class="table table-striped">  
            <thead>  
            <tr>  
                <th>Select</th>  
                <th>From</th>  
                <th>Subject</th>  
                <th>Date</th>  
            </tr>
            </thead>
            <tbody>  
        <?php
            //show records
            while ($row = mysql_fetch_array($usrmsg)) {

            $frm_user = $row['from_uid'];
            // Get details from users_profiles table.
            $usrname = mysql_query("select * from `users_profiles` where `id`=$frm_user");
            $usrname = mysql_fetch_array($usrname);
        ?>
            <tr>  
                <td> <label class="checkbox"><input type="checkbox"></label> </td>  
                <td><?php echo $usrname['firstname'] . " " . $usrname['lastname'];?> </td>  
                <td><!-- <a href="<?php echo $row['id']; ?>" id="getmsg"><?php echo substr($row['subject'],0,40); ?>...</a> -->
                 <input class="data" type="text" value="<?php echo $row['id']; ?>" id="<?php print $row['id']; ?>" />
                 <input type="button" href="#get-content" class="clickme" value="<?php echo substr($row['subject'],0,40); ?>.." id="<?php print $row['id']; ?>"/>
                </td>  
                <td><?php echo $row['date']; ?></td>  
            </tr> 
        <?php
            }   
        ?>
        </tbody>  
       </table>  
       <div id="content">
            The table will be placed here
        </div>

DBからテーブルにレコードをロードしています。これで、ユーザーが件名をクリックすると、JQUERYAJAXはメッセージをDIVコンテンツに表示するはずです。それは正しく起こっていますが、最初の記録のためだけです。2番目のレコードをクリックしても、必要なものが必要ない最初のレコードが表示されます。ユーザーがレコードをクリックすると、対応するメッセージが表示されますが、常に最初であるとは限りません。

実際、私のJQUERYAJAXは常に最初のレコードIDをmessage.phpに渡します。私の場合は10です。

これがjqueryです。

<script type="text/javascript" >
    $(document).ready(function(){
        $(".clickme").click(function() {
            $("#content").html('Retrieving...');
            $.ajax({
                type: "GET",
                data: "data=" + $(".data").val(),
                url: "message.php",
                dataType: 'json', 
                success: function(data){
                var msg = data[0];              //get id
                $("#content").html(msg);
                }
            });
        });
    });
</script>

誰かが私を助けることができればそれは素晴らしいことです...

前もって感謝します..

以下はプランのHTMLです

<table class="table table-striped">  
            <thead>  
            <tr>  
                <th>Select</th>  
                <th>From</th>  
                <th>Subject</th>  
                <th>Date</th>  
            </tr>
            </thead>
            <tbody>  
                    <tr>  
                <td> <label class="checkbox"><input type="checkbox"></label> </td>  
                <td>Raj Janorkar </td>  
                <td><!-- <a href="10" id="getmsg">This is proposal for you.....</a> -->
                 <input class="data" type="text" value="10" id="10" />
                 <input type="button" href="#get-content" class="clickme" value="This is proposal for you...." id="10"/>
                </td>  
                <td>2012-08-26</td>  
            </tr> 
                    <tr>  
                <td> <label class="checkbox"><input type="checkbox"></label> </td>  
                <td>Raj Janorkar </td>  
                <td><!-- <a href="11" id="getmsg">All Messages Are Monitored..if we found ...</a> -->
                 <input class="data" type="text" value="11" id="11" />
                 <input type="button" href="#get-content" class="clickme" value="All Messages Are Monitored..if we found .." id="11"/>
                </td>  
                <td>2012-08-26</td>  
            </tr> 
                    <tr>  
                <td> <label class="checkbox"><input type="checkbox"></label> </td>  
                <td>Raj Janorkar </td>  
                <td><!-- <a href="12" id="getmsg">All Messages Are Monitored All Messages ...</a> -->
                 <input class="data" type="text" value="12" id="12" />
                 <input type="button" href="#get-content" class="clickme" value="All Messages Are Monitored All Messages .." id="12"/>
                </td>  
                <td>2012-08-26</td>  
            </tr> 
                    <tr>  
                <td> <label class="checkbox"><input type="checkbox"></label> </td>  
                <td>Raj Janorkar </td>  
                <td><!-- <a href="9" id="getmsg">date...</a> -->
                 <input class="data" type="text" value="9" id="9" />
                 <input type="button" href="#get-content" class="clickme" value="date.." id="9"/>
                </td>  
                <td>2012-08-21</td>  
            </tr> 
                    <tr>  
                <td> <label class="checkbox"><input type="checkbox"></label> </td>  
                <td>Raj Janorkar </td>  
                <td><!-- <a href="1" id="getmsg">...</a> -->
                 <input class="data" type="text" value="1" id="1" />
                 <input type="button" href="#get-content" class="clickme" value=".." id="1"/>
                </td>  
                <td>0000-00-00</td>  
            </tr> 
                    <tr>  
                <td> <label class="checkbox"><input type="checkbox"></label> </td>  
                <td>Raj Janorkar </td>  
                <td><!-- <a href="6" id="getmsg">...</a> -->
                 <input class="data" type="text" value="6" id="6" />
                 <input type="button" href="#get-content" class="clickme" value=".." id="6"/>
                </td>  
                <td>0000-00-00</td>  
            </tr> 
                    <tr>  
                <td> <label class="checkbox"><input type="checkbox"></label> </td>  
                <td>Raj Janorkar </td>  
                <td><!-- <a href="7" id="getmsg">...</a> -->
                 <input class="data" type="text" value="7" id="7" />
                 <input type="button" href="#get-content" class="clickme" value=".." id="7"/>
                </td>  
                <td>0000-00-00</td>  
            </tr> 
                    <tr>  
                <td> <label class="checkbox"><input type="checkbox"></label> </td>  
                <td>Raj Janorkar </td>  
                <td><!-- <a href="8" id="getmsg">Hi want to test you...</a> -->
                 <input class="data" type="text" value="8" id="8" />
                 <input type="button" href="#get-content" class="clickme" value="Hi want to test you.." id="8"/>
                </td>  
                <td>0000-00-00</td>  
            </tr> 
                    </tbody>  
           </table>  
           <div id="content">
                The table will be placed here
            </div>
4

1 に答える 1

2

MrOBRianが述べたように、あなたの問題は$(".data").val(). $(".data")ページ上のクラスを持つすべての入力のコレクションを返しdataます。

セレクターを のようなものに変更する必要があります$(this).siblings('.data').val();。これdataにより、クリックされたボタンの横に入力が表示されます。

于 2012-08-30T20:49:54.943 に答える