Кнопка ASP.NET внутри модального окна начальной загрузки не вызывает событие щелчка

Я работаю в модальном Bootstrap на своем сайте asp.net, модальный работает нормально, но кнопка btnSaveImage внутри модального нижнего колонтитула не запускает событие щелчка, у меня также есть мастер-страница, и в ней находится тег формы.

Вот мой код:

 <a href="#dvUpload" data-toggle="modal">
   <asp:Button runat="server" ID="lnkUploadPics" CssClass=" btn-large Greengradiant"
                                    Width="100%" Text="Upload pictures"></asp:Button>
   </a>
   <div id="dvUpload" class="modal hide fade" tabindex="-1" role="dialog" aria-labelledby="myModalLabel"  aria-hidden="true">
     <div class="modal-header">
      <button type="button" class="close" data-dismiss="modal" aria-hidden="true">
         ×</button>
        <h3 id="myModalLabel">
             Upload Image</h3>
           </div>
             <div class="modal-body">
            <div class="row-fluid" style="padding-left: 10px; padding-right: 10px; padding-bottom: 20px;"> 
<div id="Upload" class="span6">
        <asp:FileUpload ID="fuImage" runat="server" />
       <img id="imgUPload" runat="server" src="" />
              </div>
             </div>
            </div>
          <div class="modal-footer">
           <button data-dismiss="modal" class="btn  btn-large"> Close</button>
           <asp:Button runat="server" ID="btnSaveImage" Text="Save Image" CssClass="Greengradiant btn-large" OnClick="btnSaveImage_Click" />
            </div>
         </div>

person skhurams    schedule 29.06.2013    source источник
comment
Есть ли на вашей странице обязательный валидатор полей?   -  person jomsk1e    schedule 29.06.2013
comment
нет, я не использовал валидатор   -  person skhurams    schedule 29.06.2013
comment
еще вопрос: ваш модал находится внутри формы?   -  person jomsk1e    schedule 29.06.2013
comment
да, на самом деле, когда я нажимаю btnSaveImage, происходит обратная передача, но я установил точку останова в событии щелчка, которое не перехватывается, если я удаляю модальную разметку, тогда нажатие кнопки работает нормально   -  person skhurams    schedule 29.06.2013
comment
Вы можете удалить кнопку asp и добавить новую кнопку и назначить событие OnClick вручную в свойствах события режима разработки. И попробуйте очистить и перестроить свое решение.   -  person jomsk1e    schedule 29.06.2013
comment
У меня есть двойной щелчок в дизайнере, чтобы создать код onclick, и я очистил и перестроил решение, но без разницы   -  person skhurams    schedule 30.06.2013
comment
если я удалю модальную разметку, то нажатие кнопки сработает, поэтому с моим кодом все в порядке, и во-вторых, один из моих коллег говорит, что событие нажатия кнопки кода на стороне сервера не будет выполняться, если вы добавите модальный режим начальной загрузки, я думаю, что это ошибка в начальной загрузке   -  person skhurams    schedule 30.06.2013


Ответы (2)


Вы можете использовать кнопку ASP, как в вашем примере.

<div class="modal-footer">
   <button data-dismiss="modal" class="btn  btn-large"> Close</button>
   <asp:Button runat="server" ID="btnSaveImage" Text="Save Image" CssClass="Greengradiant btn- large" OnClick="btnSaveImage_Click" />
</div>

просто попробуйте UseSubmitBehavior="false", как указано skhurams, и объедините его с data-dismiss="modal"

<div class="modal-footer">
   <button data-dismiss="modal" class="btn  btn-large"> Close</button>
   <asp:Button runat="server" ID="btnSaveImage" Text="Save Image" CssClass="Greengradiant btn- large" OnClick="btnSaveImage_Click" UseSubmitBehavior="false" data-dismiss="modal" />
</div>

это закроет модальное окно и вызовет обратную передачу

person bjvilory    schedule 12.09.2013
comment
В моем случае, если я добавлю UseSubmitBehavior=false data-dismiss=modal, то требование проверки не сработает, и модальное всплывающее окно закроется. @bjvilory - person mohd mazhar khan; 02.08.2017

Я хотел бы добавить еще один момент здесь. Я столкнулся с этой проблемой, потому что мои окончательные отрисованные модальные диалоги были помещены вне тега WebForms <form>, и использование UseSumbitBehavior="false" не решило мою проблему. Перемещение модальных диалоговых блоков внутри формы решило проблему.

$("div.modalForm").appendTo($("form:first"));
person Fahad    schedule 21.08.2018