【问题标题】:Page postback caused generated HTML gone页面回发导致生成的 HTML 消失
【发布时间】:2012-03-02 12:24:19
【问题描述】:

我在下面的博客中遇到了通过 JavaScript 动态添加或删除 HTML 表格行:

http://viralpatel.net/blogs/2009/03/dynamically-add-remove-rows-in-html-table-using-javascript.html

我的目标是有一个 ASP.NET FileUpload 控件供用户上传图片,然后图片名称将动态显示在表格行上,表格应该由上面的 JavaScript 生成。

问题是每次添加图片,回发都会导致HTML表格消失,如何将HTML表格存储在某个地方?

我确实考虑使用 StringBuild 类从后面的代码中附加 HTML 表,但是删除行会有问题。

有更好的解决方法来实现这一点吗?请发表您的意见。

谢谢你。

【问题讨论】:

  • 你能贴出你目前尝试过的代码吗...

标签: javascript asp.net html


【解决方案1】:

ASP.NET FileUpload 控件不是很灵活,并且有更多最新的方法来处理文件上传。有一个很棒的 jQuery 文件上传插件,如果我正确理解您的问题,它会完全满足您的需求:http://blueimp.github.com/jQuery-File-Upload/

【讨论】:

    【解决方案2】:

    您需要确保生成和插入动态控件的代码在每个页面回发后运行。只要您这样做,ViewState 将确保输入到动态控件中的值在回发后仍然存在。

    【讨论】:

      【解决方案3】:

      这是一个使用文字控件的简单模型。

      ASPX

              <asp:Literal ID="lbl1" runat="server"></asp:Literal>
              <br />
              <br />
              <asp:Button ID=btnAdd runat=server Text="Simulate Upload Complete()" onclick="btnAdd_Click" />
              <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
      

      CS

      protected void Page_Load(object sender, EventArgs e)
      {
          if (!IsPostBack)
          {
              lbl1.Text = "<table>";
              lbl1.Text += "<tr>";
              lbl1.Text += "<td>Row1</td>";
              lbl1.Text += "</tr>";
              lbl1.Text += "<tr>";
              lbl1.Text += "<td>Row2</td>";
              lbl1.Text += "</tr>";
              lbl1.Text += "</table>";
          }
      }
      
      protected void btnAdd_Click(object sender, EventArgs e)
      {
          lbl1.Text = lbl1.Text.Replace("</table>", string.Empty);
          lbl1.Text += string.Format("<tr><td>{0}</td></tr>", TextBox1.Text);
          lbl1.Text += "</table>";
          TextBox1.Text = string.Empty;
      }
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2020-06-29
        • 2014-10-09
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多