Не самое короткое, и очень после совершения, но я не мог сдержать предоставление его попытка в MATLAB:
R=@(s)all(s==fliplr(s));
24 символа.
Я считаю, что все остальные ответы упускают из виду суть вопроса (если только я не являюсь единственным недоразумением). Я думаю, что автор хотел, чтобы при отправке формы ее результаты отображались в fancybox. Я не обнаружил, что какие-либо другие ответы обеспечивали эту функциональность.
Для этого я использовал плагин jQuery Form ( http://malsup.com/jquery/form/ ), чтобы легко преобразовать форму в вызов ajax. Затем я использовал обратный вызов успеха, чтобы загрузить ответ в fancybox, используя ручной вызов $ .fancybox ().
$(document).ready(function() {
$("#myForm").ajaxForm({
success: function(responseText){
$.fancybox({
'content' : responseText
});
}
});
});
Итак, вместо того, чтобы прикреплять fancybox к некоему искусственному тегу , вы прикрепляете ajaxForm к самой форме.
ПОПРОБУЙТЕ ЭТО
$(document).ready(function() {
$("#link").fancybox();
$("#btn").click(function(){
$("#link").trigger('click');
});
});
<input type="button" id="btn" value="Button" />
<div style="display:none;">
<a href="#test" id="link">Click</a>
</div>
<div id="test" style="display:none;">fancy box content</div>
при нажатии кнопки вы запускаете щелчок по скрытому href.
надеюсь, что это поможет
Лучше использовать html на лету, например
$("#buttontoclick").click(function() {
$('<a href="path/to/whatever">Friendly description</a>').fancybox({
overlayShow: true
}).click();
});
Вы можете выполнить ajax-отправку данных формы, сохранить данные в сеансе и затем активировать щелчок по ссылке.
Я просто должен был это сделать. Вот как я это сделал.
$('#elementid').fancybox({
onStart : function() {
$.post($(this).attr('href'), $('#formid').serialize());
}
});
Таким образом, вы можете отправить форму и вызвать fancybox одним выстрелом. Форма отправляется в стиле ajax. Кнопка "submit" должна быть в теге .
Надеюсь, это поможет.
Fancybox может работать с ajax-запросами напрямую, без использования дополнительных скриптов jQuery.
$("#login_form").bind("submit", function() {
$.ajax({
type : "POST",
cache : false,
url : "/login.php",
data : $(this).serializeArray(),
success: function(data) {
$.fancybox(data);
}
});
return false;
});
<form action="/login.php" method="POST" id="login_form">
<input type="input" size="20" name="username" />
<input type="submit" value="Login" />
</form>