2009-09-25 5 views
0

저는 친구를위한 웹 사이트를 만들고 있는데, http://www.istockphoto.com/stock-photo-8544108-beauty-with-hat.php과 같은 선택 가능한 메뉴를 코딩하는 것이 얼마나 어려운지 알고 싶습니다. . 나는 asp.net C#에서 비슷한 것을 만들고 싶다. Google에서 3 시간 동안 검색했지만 비슷하거나 유용한 해결책을 찾을 수 없습니다. 누군가 도와 줄 수 있습니까?C#으로 asp.net에서 선택 가능한 그리드 행. istockphoto와 같습니다.

alt text http://www.balexandre.com/temp/2009-09-25_1158.png

답변

0

1을 달성하기 쉽습니다 - 놓습니다 스크립트 관리자 3 - - 대신 새로운 AJAX 당신의 비주얼 스튜디오

alt text http://www.balexandre.com/temp/2009-09-25_1201.png

2에서 웹 사이트를 활성화 만들 업데이트 패널을 열고안에 GridView 및 텍스트 상자를 추가합니다. 4 - 업데이트 패널에 ChildrenAsTriggers = "true"가 표시됩니다. 5 - 그리드보기 RowDataBound에이 이벤트를 추가하고

<body> 
    <form id="form1" runat="server"> 
    <asp:ScriptManager ID="sm" runat="server" /> 
    <div> 
     <asp:UpdatePanel ID="pnl" runat="server"> 
     <ContentTemplate> 
      <asp:GridView ID="grid" runat="server" OnRowDataBound="grid_RowDataBound" OnSelectedIndexChanged="grid_SelectedIndexChanged"> 
       <Columns> 
        <asp:CommandField ShowSelectButton="True" /> 
       </Columns> 
      </asp:GridView> 
      <br /> 
      Credits: 
      <asp:Label ID="lbl" runat="server" Text="Label" Font-Bold="true" /> 
     </ContentTemplate> 
     </asp:UpdatePanel> 
    </div> 
    </form> 
</body> 

6의 SelectedIndexChanged - 시도 모두

protected void grid_RowDataBound(object sender, GridViewRowEventArgs e) 
{ 
    if (e.Row.RowType == DataControlRowType.DataRow) 
    { 
     e.Row.Attributes.Add("onclick", "javascript:__doPostBack('grid','Select$" + e.Row.RowIndex + "')"); 
    } 
} 
protected void grid_SelectedIndexChanged(object sender, EventArgs e) 
{ 
    lbl.Text = "changed..."; 
} 
+0

메뉴를보십시오. 죄송합니다. 이미지가 잘려 나왔지만 웹 사이트에 업로드 할 위치가 없습니다. –

+0

무료 이미지 호스팅 사이트에서 호스팅 한 경우 이미지 아이콘 (StackOverflow 편집기에서)을 클릭하면 링크가 표시됩니다. 나는 JING을 사용하고 있고 내 자신의 FTP (http://www.jingproject.com)에서 호스팅하고있다. – balexandre

0

에 뭔가를이 :

당신은하기 위해 기어를 수락해야
<style type="text/css"> 
    .selectedRow{background-color:#E8E8FF;} 
</style> 

<table id="selectMenu"> 
    <tr><th>Size</th><th>Pixles</th><th>File size</th><th>Credits</th></tr> 
    <tr><td>Small</td> <td>849 × 565 px</td> <td>555.96 KB</td> <td>20</td></tr> 
    <tr><td>Medium</td> <td>1698 × 1131 px</td> <td>1.89 KB</td> <td>30</td></tr> 
</table> 

<div style="height:50px;width:200px"> 
    <div style="float:right;text-align:left;"> 
    Total Credits: <span id="credits">&nbsp;</span> 
     //YOU CAN USE ASP.net HIDDEN FIELD TO WORK ON SERVER SIDE 
     <input type="hidden" id="creditsValue" value=""/> 
    </div> 
</div> 

<script type="text/javascript"> 
    $(document).ready(function(){ 
    $("table#selectMenu tr td").click(function(){ 
    var row=$(this).parent(); 
    //un-highlight any previously row 
    $("table#selectMenu tr").removeClass("selectedRow"); 
    //highlight current row 
    $(row).addClass("selectedRow"); 

    //get credits (from last td) 
    var c=$(row).children(":last").text(); 
    //show credits required in span below table 
    $("span#credits").text(c); 
    $("#creditsValue").attr("value",c); 
    }) 
}); 
</script> 
+0

고마워, 지금 시험해 보겠다. –