如何从变量webform插入数据(无线电和开放)?

时间:2013-10-09 10:29:46

标签: c# asp.net sql-server

您好我正在尝试从变量表单插入数据,但我不知道从哪里开始。 我有3个脚本。一个类(我们称之为test.cs),一个webform(test.aspx),当然还有test.aspx.cs。

让我们从创建表单的类开始(这样可以创建表单):

public string Questions()
    {
        SqlCommand cmd = new SqlCommand("SELECT enquete_vraag_ID, enquete_vraag, type, actief FROM enquete_vraag ORDER BY volgorde ASC", con);
        SqlDataReader reader;
        con.Open();
        reader = cmd.ExecuteReader();
        StringBuilder str = new StringBuilder("");
        while (reader.Read())
        {
            if (reader["actief"].ToString() == "True")
            {
                str.Append("<tr>");
                str.Append("<td class='bold' colspan='11'>" + reader["enquete_vraag"].ToString() + ":</td>");
                str.Append("</tr>");
            }
            if (reader["type"].ToString() == "radio" && reader["actief"].ToString() == "True")
            {
                str.Append("<tr>");
                str.Append("<td>Cijfer:</td>");
                str.Append("<td>1<input type='radio' value='1' name='" + reader["enquete_vraag_ID"].ToString() + "' /></td>");
                str.Append("<td>2<input type='radio' value='2' name='" + reader["enquete_vraag_ID"].ToString() + "' /></td>");
                str.Append("<td>3<input type='radio' value='3' name='" + reader["enquete_vraag_ID"].ToString() + "' /></td>");
                str.Append("<td>4<input type='radio' value='4' name='" + reader["enquete_vraag_ID"].ToString() + "' /></td>");
                str.Append("<td>5<input type='radio' value='5' name='" + reader["enquete_vraag_ID"].ToString() + "' /></td>");
                str.Append("<td>6<input type='radio' value='6' name='" + reader["enquete_vraag_ID"].ToString() + "' /></td>");
                str.Append("<td>7<input type='radio' value='7' name='" + reader["enquete_vraag_ID"].ToString() + "' /></td>");
                str.Append("<td>8<input type='radio' value='8' name='" + reader["enquete_vraag_ID"].ToString() + "' /></td>");
                str.Append("<td>9<input type='radio' value='9' name='" + reader["enquete_vraag_ID"].ToString() + "' /></td>");
                str.Append("<td>10<input type='radio' value='10' name='" + reader["enquete_vraag_ID"].ToString() + "' /></td>");
                str.Append("</tr>");
            }
            else if (reader["type"].ToString() == "open" && reader["actief"].ToString() == "True")
            {
                str.Append("<tr>");
                str.Append("<td colspan='11'><textarea name='" + reader["enquete_vraag_ID"].ToString() + "'></textarea></td>");
                str.Append("</tr>");
            }
        }
        reader.Close();
        con.Close();
        HtmlString text = new HtmlString(str.ToString());
        return text.ToString();
    }

现在显示它的webform应该:

<div id="right-questions">
    <form id="Form1" method="post" action="#" runat="server">
        <table class="table-questions">
            <tr>
                <td class="bold" colspan="11">Algemene gegevens:</td>
            </tr>
            <tr>
                <td colspan="11" class="word-spacing">
                    <asp:Label ID="algemeneGegevensLabel" runat="server" Text=""></asp:Label></td>
            </tr>
            <asp:Label ID="vragenLabel" runat="server" Text=""></asp:Label>
            <tr>
                <td colspan="11">
                    <asp:Button ID="insturenButton" runat="server" Text="Insturen" OnClick="insturenButton_Click" /></td>
            </tr>
        </table>
    </form>
</div>

最后一次test.aspx.cs(我什么也没有,因为我不知道该怎么做):

    protected void Page_Load(object sender, EventArgs e)
    {
        Klas klas = new Klas(Session["klas"].ToString());
        Vak vak = new Vak();
        var vakken = klas.showVakken();
        vakkenLabel.Text = vakken;
        algemeneGegevensLabel.Text = klas.algemeneGegevens();
        vragenLabel.Text = vak.Vragen();
    }

    protected void insturenButton_Click(object sender, EventArgs e)
    {

    }

我希望有人可以帮助我。

1 个答案:

答案 0 :(得分:0)

您可以尝试使用InnerHtml属性。设置要添加这些按钮的区域,并在服务器端事件中放置runat="server"以访问此按钮,如下所示

<div id="buttonContainer" runat="server"></div>

现在您只需要设置此容器的innerHTML

protected void insturenButton_Click(object sender, EventArgs e)
{
  string htmlString = Questions();   // call your function which returns the string.
  buttonContainer.InnerHtml = htmlString;
}