更新面板内的链接按钮不起作用

时间:2015-10-22 06:38:45

标签: c# jquery asp.net webforms

我在更新面板中有两个链接按钮。如果我点击第一个链接或第二个链接,然后第一次它正在工作,但第二次它没有响应。 这是我的aspx代码

<asp:UpdatePanel ID="UpdatePanel1" runat="server">
    <ContentTemplate>
        <table style="width: 80%;" runat="server" id="addAnounce">
          <tr>
            <td style="width: 50%; padding-left: 10px;">&nbsp;<asp:Label runat="server" Text="Message Text" ID="Label8"></asp:Label>
            </td>

            <td style="width: 50%">
              <table>
                  <tr>
                      <td style="width: 60%">
                          <asp:TextBox ID="txt_Message" runat="server" MaxLength="2000" Height="100px" TextMode="MultiLine" Wrap="true" Width="121%"></asp:TextBox>
                      </td>
                      <asp:RequiredFieldValidator ID="RequiredFieldValidator4" runat="server" ControlToValidate="txt_Message" Display="Dynamic" ErrorMessage="Messgae Text is Mandatory." ValidationGroup="Reg"  ForeColor="Red" SetFocusOnError="True">*</asp:RequiredFieldValidator>
                      <td  style="width: 40%"; align="right";>
                          <asp:LinkButton ID="LinkRiverBasin" runat="server" Text="River Basin" OnClick="LinkRiverBasin_Click"></asp:LinkButton><br /><br />
                          <asp:LinkButton ID="LinkState" runat="server" Text="State" OnClick="LinkState_Click"></asp:LinkButton><br />
                      </td>
                  </tr>
              </table>
          </table>
      </ContentTemplate>        
  </asp:UpdatePanel>

CS页面是:

protected void LinkRiverBasin_Click(object sender, EventArgs e)
{
    txt_Message.Text = txt_Message.Text + '\n' + "<River Basin>" + '\n';
}

protected void LinkState_Click(object sender, EventArgs e)
{
    txt_Message.Text = txt_Message.Text + '\n' + "<State>" + '\n';
}

3 个答案:

答案 0 :(得分:1)

这是角度括号的问题,用CS代码替换代码背后的代码

  protected void LinkRiverBasin_Click(object sender, EventArgs e)
        {
            txt_Message.Text = txt_Message.Text + '\n' + "River Basin" + '\n';
        }

        protected void LinkState_Click(object sender, EventArgs e)
        {
            txt_Message.Text = txt_Message.Text + '\n' + "State" + '\n';
        } 

答案 1 :(得分:1)

因为你利用了“潜在的危险人物” 删除“&lt;”和“&gt;”字符,它会工作。

关注此http://tldp.org/HOWTO/Secure-Programs-HOWTO/cross-site-malicious-content.html

答案 2 :(得分:1)

在web.config中添加以下代码行以允许此字符

  <pages validateRequest="false" ></pages>