0

您好我正在尝试从变量表单中插入数据,但我不知道从哪里开始。我有 3 个脚本。一个类(我们称之为 test.cs)、一个网络表单(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();
    }

现在显示它的网络表单应该:

<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)
    {

    }

我希望有一个人可以帮助我。

4

1 回答 1

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;
}
于 2013-10-09T10:38:05.750 回答