我有一个aspx数据输入页面,它接受某些字段的用户输入并插入到数据库中。
有两个部分(在问题的其余部分称为S1和S2)
S1有3个文本输入控件和2个单选按钮。同样,S2也有3个文本输入控件和2个单选按钮。
有什么期望?
单击提交后,后面的代码必须将S1字段的值插入S1表,同样,S2字段的值成功转换为S2。
出了什么问题?
在DB中仅填充S1表值,S2表为空。没有记录在S2中输入。
在调试器的帮助下,我发现在S1的单选按钮之后用户输入的所有输入字段值都没有被接受。他们是空白的。
SQL查询都是正确的。我甚至尝试在aspx页面上用S2交换S1部分。当我这样做时,S2值进入DB而不是S1。同样,在S2的单选按钮之后出现的S1的输入字段值没有被读取。
有人告诉我这是某种回发问题。
第1节(S1)的ASPX代码[S2代码类似]
<asp:TextBox ID="txtTitle" runat="server" CssClass="form-control lw-sharp-corners" placeholder="Enter Release Title"></asp:TextBox>
<asp:TextBox ID="txtReleaseDescription" runat="server" CssClass="form-control lw-sharp-corners" placeholder="Enter Release Description"></asp:TextBox>
<asp:TextBox ID="txtReleaseUrl" runat="server" CssClass="form-control lw-sharp-corners" placeholder="Enter Release Url"></asp:TextBox>
<div class="form-group" id="ActivateRelease">
<label for="rdoActivateRelease" id="lblActivateRelease">Activate Release?</label>
<div class="radio">
<label for="rdoActivateReleaseYes" id="lblActivateReleaseYes">
<asp:RadioButton ID="rdoActivateReleaseYes" GroupName="rdoActivateRelease" runat="server" ClientIDMode="Static" />
Yes
</label>
<label for="rdoActivateReleaseNo" id="lblActivateReleaseNo">
<asp:RadioButton ID="rdoActivateReleaseNo" GroupName="rdoActivateRelease" runat="server" ClientIDMode="Static" />
No
</label>
</div>
第1节(S1)的CS页码[S2代码类似]
protected void btnMap_Click(object sender, EventArgs e)
{
string ReleaseTitle = "";
SqlCommand cmd1 = new SqlCommand("sp_InsertRelease", con);
cmd1.CommandType = CommandType.StoredProcedure;
cmd1.Parameters.Add("@Title", SqlDbType.NVarChar).Value = txtTitle.Text;
cmd1.Parameters.Add("@ReleaseDescription", SqlDbType.NVarChar).Value = txtReleaseDescription.Text;
cmd1.Parameters.Add("@ReleaseUrl", SqlDbType.NVarChar).Value = txtReleaseUrl.Text;
cmd1.Parameters.Add("@DeviceType", SqlDbType.Int).Value = 2;
int ActivateState1;
if (rdoActivateReleaseYes.Checked)
{
ActivateState1 = 1;
}
else
{
ActivateState1 = 0;
}
cmd1.Parameters.Add("@IsActive", SqlDbType.Bit).Value = ActivateState1;
con.Open();
SqlDataReader drRelease = cmd1.ExecuteReader();
while (drRelease.Read())
{
ReleaseTitle = drRelease.GetValue(0).ToString();
}
con.Close();
请告诉我如何解决这个问题。如果您需要任何代码,请告诉我。
答案 0 :(得分:1)
你能添加完整的aspx代码吗?这两个部分是否属于相同的FORM标签?