fancybox удаляет тег

#asp.net #fancybox

#asp.net #fancybox

Вопрос:

Я использую плагин FancyBox jquery для отображения модальных всплывающих окон.

Сайт является:http://www.chatisfying.com

Чтобы увидеть пример диалогового окна fancybox, о котором идет речь, пожалуйста, перейдите сюда: http://www.chatisfying.com/Mohali /

Если вы установите флажок, у <div id="getPassCode"></div> должен быть <form> единственный дочерний элемент.

Я использую веб-пользовательский элемент управления для генерации содержимого модального поля, вот код:

 <%@ Control Language="C#" AutoEventWireup="true" CodeFile="ucGetPassCode.ascx.cs" Inherits="UserControls_Default_ucGetPassCode" %>

<div style="display:none;">
<div id="getPassCode">
  <form action="<%= Request.RawUrl %>" id="passcode">


  <div class="Block">
    <div class="label"><%= ms.GetValue("pass_code_label",3)%></div>
    <div class="float_left">


                <input type="text" name="TextBox_PassCode" runat="server" title="" id="TextBox_PassCode" value="" />
                <asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server" 
        ControlToValidate="TextBox_PassCode" Display="Dynamic" ErrorMessage="*"></asp:RequiredFieldValidator>
    </div>
    <div class="clear"></div>
  </div>



    <% 
        if (this.qaTable != null amp;amp; this.qaTable.Count > 0)
        {
            foreach (FlexChatUpdate2.ThemeQuestionAnswersRow r in this.qaTable)
            {
    %>
            <div class="Block">
                <div class="label"><%= ms.GetValue("question_label",3)%></div>
                <div class="float_left">
                    <%= r.ThemeQuestion %>
                </div>
                <div class="clear"></div>
            </div>

            <div class="Block">
                <div class="label"><%= ms.GetValue("answer_label",3)%></div>
                <div class="float_left">
                    <input type="text" name="answers" value="" />
                </div>
                <div class="clear"></div>
            </div>
    <%
            }
        }
    %>

    <div class="Block">
    <div class="label">amp;nbsp;</div>
    <div class="float_left">
      <input id="Button_GetTheme" name="Button_GetTheme" type="submit" value="" runat="server" />

    </div>
    <div class="clear"></div>
  </div>

  <div class="Block">
    <div class="label">amp;nbsp;</div>
    <div class="float_left">


      <a href="<%= ResolveUrl("../../RequestPassCode.aspx?ThemeID="   this.ThemeID.ToString()) %>"><%= ms.GetValue("request_passcode_link_text",3)%></a> |
            <a href="<%= this._root %>"><%= ms.GetValue("back_home_link_text",3)%></a>
    </div>
    <div class="clear"></div>
  </div>
    </form>
</div>
</div>

<a style="display:none;" href="#getPassCode" class="getpasscode_trigger">get pass code</a>
  

Я использовал jqModal до fancybox, и у него был тег form без проблем. Кто-нибудь может мне помочь, где я ошибся?

Ответ №1:

я решил эту проблему, обернув #getPassCode тегом после завершения отображения содержимого fancy box. вот так —

 onComplete: function()
{
  $('#getPassCode').wrap('<form action="<%= Request.RawUrl %>" method="post" />');
},
  

Это повторно вставило тег, который был удален. Может быть, это грязное решение, но оно работает: D

Ответ №2:

Вы должны проверить, что тег form не находится внутри другого тега form.