0

foreach ループでデータを循環しています。各ループで、コンテナー クラスには次のものが含まれます。

foreach($resultarray AS $value){
        $filename = substr($value['img_file_name'],9);
        $cat_id = $value['cat_id'];
        echo '<article class="post">';
        echo '<div class="post_title">' . $value['post_title'] . '</div>';
        echo '<div class="post_info">' . 
        'Category: ' . $cat_name = get_cat_name($cat_id) .'<br />'. 
        'Year: ' . $value['post_year'] .'<br />'. 
        $value['post_desc'] .'<br />'. 
        '</div>';
        echo '<div class="link-to-post"><a href="#">Click to view</a></div>';
        echo '<a href="#" class="linktopost"><img class="post-thumb" src="img/thumb_/'.$filename.'" alt="MJbox Michael Jackson memorabilia thumbnail" /></a>';
        echo '<a href="#" class="linktopost"><img class="cover-img" src="img/post-bg-1.png" alt="test" /></a>';
        echo '<form name="form"><input type="text" class="postid" value="'.$value['post_id'].'" /></form>';
        echo '</article>';

    }

「lintopost」リンク/画像をクリックすると、Jquery で次の div が表示されます。

<div id="main-post">
        <div id="gotpostid">some text</div>
</div>

現在、#main-post div が表示されるタイミングと、その投稿のデータを取得して div 内に配置するタイミングを処理するために、colowing Jquery を使用しています。

$(".cover-img").click(function(){
        $("#main-post").fadeIn(1000);
        $.post("inc/fullpost.php", {postid: $('.postid').val()},
            function(output){
                $("#gotpostid").html(output).show();
            }).fail(function(x,y,z){ 
                $("#gotpostid").html(x + "<br />" + y + "<br />" + z)
            });

});

私が現在抱えている問題は、入力「postid」の値が適切に選択されていないことです。最初の.postidだけでなく、この入力フィールドから値を取得するように選択するにはどうすればよいですか。これにより、すべての反復でIDが同じになります。

私は自分自身を十分に説明したことを願っています。

4

1 に答える 1

1

1).on('click', function() {マークアップに新しい要素を追加するときに使用することをお勧めします。

2) 画像の使用.find()をクリックした後.parent()、入力を正確に取得します。

于 2012-06-10T12:15:35.753 に答える