2012-09-15 63 views
1

我正在建立一個網站,將有帖子和各自的評論。在下面的帖子顯示評論ASP.net Webmatrix

我顯示帖子的方式是我循環記錄並將它們放入div。另外,我還有另一個查詢來從評論表中獲取數據,這隻會給我點擊的帖子提供相關的評論。

問題是,當我使用foreach循環在單獨的div中顯示註釋(就在同一級別的帖子div下面)時,所有其他帖子下都將顯示註釋。我嘗試使用$(這enter code here).sibling和$(this).children()等,但它不起作用。

在jquery中,我隱藏了document.ready上的註釋div,並在點擊帖子時顯示。

這裏的代碼片段:

@foreach(var row in selectposts) 
{ 
    <div id ="posts">@row.posts</div> 
    @foreach(var row in selectcomments) 
    { 
    <div id ="comment">@row.comments</div> 
    } 
} 
+0

看起來你正在輸出'

@row.posts
'中的所有帖子,你可能需要循環這第一個 – hsalama

+0

帖子被循環,div id帖子在頁面上輸出不同的帖子。問題是我只想在帖子下面顯示所有相關的評論,因此使用另一個循環。但這是以某種方式顯示所有其他帖子的第一篇文章的評論。希望這解釋了這種情況。感謝您的回覆。 –

+0

我不是剃鬚刀專家,但它看起來像你的代碼應該工作。它可能與你使用jQuery隱藏/顯示有關。你有沒有嘗試輸出沒有jQuery的頁面,看它是否在相關文章下正確輸出? – hsalama

回答

0

嘗試是這樣的:

@{ 
    var db = Database.Open("MyDatabase"); 
    var postsQuery = "SELECT * FROM Posts"; 
    var commentsQuery = "SELECT * FROM Comments WHERE PostId = @0"; 
} 

@foreach(var post in db.Query(postsQuery)){ 
    <div class="[email protected]">@post.PostContent</div> 
    @foreach(var comment in db.Query(commentsQuery, post.Id)){ 
     <div class="[email protected]">@comment.CommentContent</div> 
    } 
} 

我剛輸入直接進入SO這一點,但它應該是附近某個地方。

jQuery在您的OP中按預期工作,因爲您始終使用相同的div ID。在這個例子中,每個post div都會有一個唯一的Id(例如post127),這樣它們可以被jQuery單獨引用。

+0

謝謝史蒂夫。 –

+0

不客氣。 –

相關問題