Создание множества форм Fancybox - PullRequest
0 голосов
/ 22 февраля 2011
<div style="display:none">
    <form id="login_form" method="post" action="">
            <p id="login_error">Please, enter data</p>
        <p>
            <label for="login_name">Login: </label>
            <input type="text" id="login_name" name="login_name" size="30" />
        </p>
        <p>
            <label for="login_pass">Password: </label>
            <input type="password" id="login_pass" name="login_pass" size="30" />
        </p>
        <p>
            <input type="submit" value="Login" />
        </p>
        <p>
            <em>Leave empty so see resizing</em>
        </p>
    </form>
</div>


<script type="text/javascript">

$("#tip5").fancybox({
    'scrolling'     : 'no',
    'titleShow'     : false,
    'onClosed'      : function() {
        $("#login_error").hide();
    }
});


$("#login_form").bind("submit", function() {

    if ($("#login_name").val().length < 1 || $("#login_pass").val().length < 1) {
        $("#login_error").show();
        $.fancybox.resize();
        return false;
    }

    $.fancybox.showActivity();

    $.ajax({
        type        : "POST",
        cache   : false,
        url     : "/data/login.php",
        data        : $(this).serializeArray(),
        success: function(data) {
            $.fancybox(data);
        }
    });

    return false;
});


</script>

Я загружаю во многие записи, и у каждой из них будет форма для размещения всей необходимой контактной информации из базы данных для этой записи. Они нажимают кнопку «контакт», и появляется всплывающее окно с формой.

Как лучше всего подойти к этому? Должен ли я после определения количества записей выполнить цикл в javascript, например, $ ("# tip" + i) .fancybox для каждой записи?

1 Ответ

0 голосов
/ 22 февраля 2011

Пусть jQuery сделает цикл за вас. Любые формы, которые вы хотите использовать для создания класса, например SetToFancyBox

Тогда все, что вам нужно сделать, это сделать один вызов jQuery с селектором класса:

$(".SetToFancyBox").fancybox({...});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...