Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/37.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net 占位符代码在“时仍然可见”;“查看源代码”;,即使占位符可见属性从代码隐藏设置为false_Asp.net_Vb.net_Asp.net Placeholder - Fatal编程技术网

Asp.net 占位符代码在“时仍然可见”;“查看源代码”;,即使占位符可见属性从代码隐藏设置为false

Asp.net 占位符代码在“时仍然可见”;“查看源代码”;,即使占位符可见属性从代码隐藏设置为false,asp.net,vb.net,asp.net-placeholder,Asp.net,Vb.net,Asp.net Placeholder,所以,在提交表单后,当“pnlThanks”占位符可见时,我可以看到页面上显示的正确内容。但当我在浏览器上“查看源代码”时,我看到的是表单的源代码,而不是“pnlThanks”占位符中的内容 我做错了什么?您需要将所有控件都放在标记中,因为ASP.NET依赖表单进行回发等操作 页面中只能有一个标记 将代码更改为: Protected Sub submit_Click(ByVal sender As Object, ByVal e As EventArgs) Handles cmdsubmit

所以,在提交表单后,当“pnlThanks”占位符可见时,我可以看到页面上显示的正确内容。但当我在浏览器上“查看源代码”时,我看到的是表单的源代码,而不是“pnlThanks”占位符中的内容


我做错了什么?

您需要将所有控件都放在
标记中,因为ASP.NET依赖
表单进行回发等操作

页面中只能有一个
标记

将代码更改为:

  Protected Sub submit_Click(ByVal sender As Object, ByVal e As EventArgs) Handles cmdsubmit.Click
      form1.Controls.Clear()
      pnlForm.Visible = False
      pnlThanks.Visible = True
  End Sub


我测试时,您的代码工作正常。我猜在回发时执行的其他代码中还有另一个
pnlForm.Visible=True

pnlThanks如果Visible=false则不会呈现,因此它不会显示在源代码中。您可以使用CSS(display=none)在开始时隐藏它,并在需要时进行更改。

目前只有一个表单的runat=server标记已彻底检查。无法找到:(在提交时,从代码隐藏处将其设置为visible=true。请参阅上面的代码。
  Protected Sub submit_Click(ByVal sender As Object, ByVal e As EventArgs) Handles cmdsubmit.Click
      form1.Controls.Clear()
      pnlForm.Visible = False
      pnlThanks.Visible = True
  End Sub
<form id="form1" runat="server" class="busgroup-form">
    <asp:PlaceHolder ID="pnlThanks" runat="server" Visible="false">
        <p><asp:Literal  ID="lblReceipt" runat="server"></asp:Literal></p>
    </asp:PlaceHolder>
    <asp:PlaceHolder ID="pnlForm" runat="server" Visible="true">
    </asp:PlaceHolder>
</form>