0

私は友人のためにウェブサイトを構築していますが、http: //www.istockphoto.com/stock-photo-8544108-beauty-with-hat.phpのような選択可能なメニューをコーディングするのがどれほど難しいか知りたいです。右側で画像サイズを選択します。asp.net c# で同様のものを作成したいと思います。Google で 3 時間検索しましたが、同様の解決策や有用な解決策が見つかりませんでした。誰か助けてくれませんか?

代替テキスト http://www.balexandre.com/temp/2009-09-25_1158.png

4

2 に答える 2

0

これは簡単に実現できます

1 - Visual Studio で新しい AJAX 対応 Web サイトを作成します。

代替テキスト http://www.balexandre.com/temp/2009-09-25_1201.png

2 - スクリプト マネージャーを配置します。 3 - 更新パネルを配置し、内部に GridView と Textbox を追加します。 4 - 更新パネルに ChildrenAsTriggers="true" と伝えます。 5 - グリッド ビューに 2 つのイベント、RowDataBound と SelectedIndexChanged を追加します。

<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 - 両方で何かをする

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...";
}
于 2009-09-25T09:22:34.130 に答える
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>
于 2009-09-25T10:04:53.453 に答える