c# - 如何在 asp.net 中的模式弹出窗口中创建错误模式弹出窗口

标签 c# asp.net ajax

我正在开发一个网站,我希望访问该网站的人添加他们的评论。

我所做的是,我保留了一个添加按钮,当用户单击该按钮时,将出现一个用于添加评论的弹出窗口。现在用户不应该将该字段留空。因此,我在后面的代码中进行了所需的验证,现在我想在用户尝试添加评论而不输入其中一个字段时显示模式弹出错误消息。我怎样才能显示错误消息然后返回到评论模式弹出..

我想出的代码如下...

<asp:Button ID="addComment" runat="server" Text="Add Your Comment" OnClick="addComment_Click" style="margin-top:10px;" Height="30px" ToolTip="Add Your comment about us" Font-Bold="True" />

<asp:scriptmanager id="ScriptManager1" runat="server"></asp:scriptmanager>
<ajaxtoolkit:modalpopupextender id="ModalPopupExtender1" runat="server" cancelcontrolid="btnCancel" targetcontrolid="addComment" popupcontrolid="Panel1" popupdraghandlecontrolid="PopupHeader" drag="false" backgroundcssclass="ModalPopupBG"></ajaxtoolkit:modalpopupextender>
<asp:panel id="Panel1" style="display: none" runat="server">
  <div class="HellowWorldPopup">
    <div class="PopupHeader" id="PopupHeader">
      <h3 style="color:white; font-family:'Palatino Linotype'">Add Your Comment</h3>
    </div>
    <div class="PopupBody">
      <p style="font-family:'Palatino Linotype'; margin-left:10px;">Your Name :</p>
      <p>
        <asp:TextBox ID="txtName" Text="" runat="server" Width="300px" style="margin-left:10px; font-family:'Palatino Linotype'; font-size:medium; font-style:italic"></asp:TextBox>
      </p>

      <p style="font-family:'Palatino Linotype'; margin-left:10px;">Your Comment:</p>
      <p>
        <asp:TextBox ID="txtComment" Text="" runat="server" Width="400px" style="margin-left:10px;font-family:'Palatino Linotype'; max-height:100px; font-size:medium; resize:none; font-style:italic" TextMode="MultiLine"></asp:TextBox>
      </p>

    </div>

    <asp:Button runat="server" id="btnOkay" Text="Done" OnClick="btnOkay_Click" style="font-family:'Palatino Linotype'; margin-bottom:10px; margin-left:10px;  width:100px; height:30px; font-size:small;font-weight:700" />
    <asp:Button ID="btnCancel" runat="server" Text="Cancel" style="font-family:'Palatino Linotype';width:100px; height:30px; margin-left:10px; font-size:small;font-weight:700" OnClick="btnCancel_Click" />

  </div>

</asp:panel>

请帮帮我..

提前致谢

最佳答案

我找到了这个问题的解决方案:

修改后的代码如下:

<asp:Button ID="addComment" runat="server" Text="Add Your Comment" OnClick="addComment_Click" style="margin-top:10px;" Height="30px" ToolTip="Add Your comment about us" Font-Bold="True" CausesValidation="false" />

<asp:scriptmanager id="ScriptManager1" runat="server"></asp:scriptmanager>
<ajaxtoolkit:modalpopupextender id="ModalPopupExtender1" runat="server" cancelcontrolid="btnCancel" targetcontrolid="addComment" popupcontrolid="Panel1" popupdraghandlecontrolid="PopupHeader" drag="false" backgroundcssclass="ModalPopupBG"
oncancelscript="ClearUI();" behaviorid="modalwithinput"></ajaxtoolkit:modalpopupextender>
<asp:panel id="Panel1" style="display: none" runat="server">
  <div class="HellowWorldPopup">
    <div class="PopupHeader" id="PopupHeader">
      <h3 style="color:white; font-family:'Palatino Linotype'">Add Your Comment</h3>
    </div>
    <div class="PopupBody">
      <p style="font-family:'Palatino Linotype'; margin-left:10px;">Your Name :</p>
      <p>
        <asp:TextBox ID="txtName" Text="" runat="server" Width="300px" style="margin-left:10px; font-family:'Palatino Linotype'; font-size:medium; font-style:italic"></asp:TextBox>
        <asp:requiredfieldvalidator id="RequiredFieldValidator1" runat="server" controltovalidate="txtName" errormessage="Please Enter your name" setfocusonerror="true" display="None"></asp:requiredfieldvalidator>
        <ajaxtoolkit:validatorcalloutextender id="RequiredFieldValidator1_ValidatorCalloutExtender" runat="server" targetcontrolid="RequiredFieldValidator1" behaviorid="textValidator" enabled="True">
        </ajaxtoolkit:validatorcalloutextender>
      </p>

      <p style="font-family:'Palatino Linotype'; margin-left:10px;">Your Comment:</p>
      <p>
        <asp:TextBox ID="txtComment" Text="" runat="server" Width="400px" style="margin-left:10px;font-family:'Palatino Linotype'; max-height:100px; font-size:medium; resize:none; font-style:italic" TextMode="MultiLine"></asp:TextBox>
        <asp:requiredfieldvalidator id="RequiredFieldValidator2" runat="server" controltovalidate="txtComment" errormessage="Please Enter the Comment" setfocusonerror="true" display="None">
        </asp:requiredfieldvalidator>
        <ajaxtoolkit:validatorcalloutextender id="Validatorcalloutextender1" runat="server" targetcontrolid="RequiredFieldValidator2" behaviorid="textValidator1" enabled="True">
        </ajaxtoolkit:validatorcalloutextender>
      </p>

    </div>

    <asp:Button runat="server" id="btnOkay" Text="Done" OnClick="btnOkay_Click" style="font-family:'Palatino Linotype'; margin-bottom:10px; margin-left:10px;  width:100px; height:30px; font-size:small;font-weight:700" />
    <asp:Button ID="btnCancel" runat="server" Text="Cancel" style="font-family:'Palatino Linotype';width:100px; height:30px; margin-left:10px; font-size:small;font-weight:700" OnClick="btnCancel_Click" />

  </div>

</asp:panel>

Source

关于c# - 如何在 asp.net 中的模式弹出窗口中创建错误模式弹出窗口,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17250954/

相关文章:

c# - 从网络摄像头获取输入

c# - C#中StrLikeText()方法如何比较 '#'的字符串?

php - 使用 jquery 的 Ajax 帮助(使用 php 和 mysql)

javascript - Ajax BeginForm - OnFailure 返回错误消息

c# - 删除 ListViewItem 集合中所有选定项目的最有效方法是什么?

c# - 在 asp.net 代码隐藏页面中添加 <br/> 和 <hr/>

c# - ASP.NET 在参数 ControlParameter 中找不到对象

c# - 由于某些引用程序集错误,无法编译代码输出

javascript - 如何防止 AJAX 请求排队?

jquery - 通过ajax加载外部页面(包含ajax)