2017-01-31 9 views
0

私ははるかに説明できるので、古いの代わりに新しい投稿を作成しています。ASP.NETの変更を送信するボタンを追加

現在、Visual Studio 2012を使用しているASP.NETで小さなプロジェクトを行っています。そのWebプロジェクトです。

私はSQLデータベースから取得した情報に基づいて "カード"を生成する必要があります。

私のページのコードビハインドには、データベースにエントリがあると同時に多くの「カード」を作成するwhileループがあります。私はオプションで選択タグを置くカードでは、私は1つのオプションを選択し、選択したオプションでデータベースの情報を更新するボタンを持つことができるようにしたい。

runatサーバーを使用してみましたが、ハンドラを追加しましたが、ボタンは機能しません。何もしません。ここに問題のコードがあります。動的に生成されるので、後ろのコードからHTMLコードを生成することに注意してください。

私はコードビハインドからhtmlを生成することが問題だと思います。 ここにコードは、 "& &"はSQL参照です、それらに注意しないでください。

html = "<div class='col-lg-3'> <div class='panel panel-default'> <div class='panel-heading' style=' background-color: #dc381c; '>Nº: " & id_ticket.ToString & " - " & Urgente.ToString & " </div> <!-- /.panel-heading --> <div class='panel-body'> <div class='row'> <div class='col-lg-12 col-lg-12'> <div class='thumbnail' style='background-color:rgba(60, 88, 188, 0.15); border-color: red;'> <div class='caption'> <h2>DIR: " & Calle_Numero.ToString & "</h2> <h4>ED: " & Nombre_Edificio.ToString & "</h4> <h4>TIPO: " & Tipo_Urgente.ToString & "</h4> <h4>TEL: " & Tel_Contacto.ToString & "</h4> <h5>DETALLE: " & Detalle_Problema.ToString & "</h5> <p style='text-align: center;'> <select id='testSelect' name='testSelect' runat='server'> <option value='volver'>Volver</option> <option value='reparacion'>En Reparacion</option> <option value='solucionado'>Solucionado</option> </select></p><input type='button' runat='server' onclick='Responder_Ticket' name='" & id_ticket.ToString & "' id='" & id_ticket.ToString & "'></div></div></div></div></div></div></div>" 

私はasp.netに新しいので、すべての詳細で非常に明確ではありません。 私はこのような問題への投稿をたくさん読んだが、何も助けなかった。 tl; dr:変更をサブミットするためのボタンが機能しません。

ありがとうございます。

+1

このコードを生成する代わりに、アイテムテンプレートを持ち、データソースにバインドできるListViewを試してみてください。それははるかに読みやすくなり、イベントをうまくコントロールすることができます。 –

答えて

1

あなたの質問は多少不明ですが、あなたのカードを設定するためにGridViewコントロールを使う方が良いと思います。これにより、RowCommand関数を使用してイベントを処理できます。 GridViewのDataSourceをSQL DataSet/Tableで設定し、次のようなコードを使用してユーザー入力の場所を読み取ることができます。

Protected Sub dgChecks_RowCommand(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewCommandEventArgs) 
    Dim index As Integer = Convert.ToInt32(e.CommandArgument) 
    Dim row As GridViewRow = dgChecks.Rows(index) 
    Dim btnOK, btnNG As Button 
    Dim i, iIssueID As Integer 

    btnOK = dgChecks.Rows(index).Cells(3).Controls(0) 
    btnNG = dgChecks.Rows(index).Cells(4).Controls(0) 
    .... 
End Sub 
関連する問題