Закрыть iframe в другую страницу после отправки кода
У меня есть веб-приложение, в котором есть кнопка, которая откроет окно формы iframe.
open.aspx-это нажатие кнопки
supervisor.aspx-это страница, открытая с помощью iframe
открытую.aspx-файл
<div style="vertical-align: middle; text-align: center; left: 500px; width: 122px; position: absolute; top: 560px; height: 50px; z-index: 126; right: 889px; font-size: 50pt; font-family: Calibri; font-weight: bold;" id="uncheckbutton"> <asp:ScriptManager ID="ScriptManager1" runat="server"> </asp:ScriptManager> <asp:Button ID="Button1" runat="server" Text="UNCHECK" /> //this is the onclick button to open the iframe <cc1:ModalPopupExtender ID="mp1" runat="server" PopupControlID="Panl1" TargetControlID="Button1" CancelControlID="Button2" BackgroundCssClass="Background"> </cc1:ModalPopupExtender> <asp:Panel ID="Panl1" runat="server" CssClass="Popup" align="center" style = "display:none"> <iframe style=" width:400px; height: 150px;" id="irm1" src="Uncheck popup.aspx" runat="server"> </iframe> <asp:button Top="100px" id="button2" runat="server" text="CLOSE" /> </asp:Panel>
а это супервайзер.aspx(iframe)
<asp:TextBox ID="inputid" runat="server" Font-Size="14px" ></asp:TextBox> <asp:Button ID="Button3" runat="server" Text="Uncheck" OnClick="btnCheck_Click" />
если пользователь вводит правильное имя пользователя, я хочу, чтобы iframe автоматически закрывался.
это мой научный руководитель.aspx-файл.в CS
protected void btnCheck_Click(object sender,EventArgs e) { string uncheck = inputid.Text; bool supervisor = Cls.GetUncheckSupervisor(uncheck); if (supervisor==true) { this.ClientScript.RegisterClientScriptBlock(this.GetType(), "Close", "window.close()", .true); } else { Show("Wrong ID!"); }
если супервизор истинен, как я могу автоматически закрыть iframe? на данный момент я использую щелчок кнопки, чтобы закрыть, и я хочу избежать меньшего щелчка.
Заранее спасибо
Что я уже пробовал:
Я попробовал использовать javascript, но iframe все еще не закрывается, хотя функция работает.
Я перешел по этой ссылке
https://stackoverflow.com/questions/43527062/how-to-close-window-after-iframe-form-submits а также https://stackoverflow.com/questions/29258881/close-iframe-from-another-webpage-asp-net
F-ES Sitecore
Вы имеете в виду, что хотите устранить необходимость нажимать кнопку, вы хотите, чтобы это происходило, когда вы печатаете? Я бы не советовал этого делать, так как это будет неприятно для пользователя, он печатает, и вдруг что-то исчезает, и он не будет знать почему.
На твоем месте я бы бросил все это дело с iframe. Используйте обычный div с вашим текстовым полем на странице, а затем используйте что-то вроде jQuery, чтобы прикрепить ключ даже к текстовому полю и отправить ajax-запрос к методу страницы для проверки текста. Webmethod вернет json, который говорит, Был ли текст правильным или нет, и если это был ваш код jQuery, то он скроет div вместе с вашим текстовым полем.
Member 14659146
Спасибо, Чувак, я уже нашел решение здесь. Еще раз спасибо за подсказку