problememotaczaniem jQuery UI Dialog + ASP.NET + skupić
Używam dialogowego jQuery UI, aby wyświetlić okno dialogowe z niektórych otaczaniem ASP.NET i przycisk w nim. Jednak ponieważ jQuery przenosi element div dla okna dialogowego poza formularz, muszę ponownie przenieść go z powrotem do formularza (zob. this), aby program ASP.NET nadal działał. To poruszanie powoduje problem, gdy pole nie jest aktywne, jeśli zostanie wywołane.
Jeśli przyjrzeć się przykładowi poniżej linii oznaczonej jako Linia B, należy ustawić fokus, jednak linia oznaczona linią A to zepsuje. Jeśli skomentuję wiersz A, to działa. Niezależnie od tego, gdzie przeniesiemy linię B do (przed dialogiem, linią A itd.), Nadal nie można ustawić ostrości.
Przez ustawienie ostrości mam na myśli kursor w polu tekstowym migającym gotowym do wpisania.
Q ujęcie jak ustawić fokus w tym scenariuszu?
Próbki
próbka ciała HTML
<body>
<form id="form1" runat="server">
<div id="popup">
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox><br />
<asp:TextBox ID="TextBox2" runat="server"></asp:TextBox>
</div>
</form>
</body>
jQuery próbka
$(document).ready(function() {
var dlg = $("#popup").dialog();
/*Line A*/ dlg.parent().appendTo(jQuery("form:first"));
/*Line B*/ $("#TextBox2").focus();
});
Zobacz moje rozwiązanie, aby zapobiec przeskakiwaniu ostrości w oknie dialogowym jQuery UI [http://stackoverflow.com/a/9428501/1230428](http://stackoverflow.com/a/9428501/1230428) Powodzenia – Roc