дининамически расширяемая форма

0

Ок, возможно, я пропустил здесь что-то очень простое, но я не могу понять это. Я пытаюсь сделать мою форму динамически расширяемой.

Моя проблема в том, что я не могу заставить этот код работать:

<html>
<head>
    <?php
    $i = 1;
    $p = 1;
    $r = 1;
    ?>
    <script language="javascript">
        function add()
        {

            document.getElementById("groesse").innerHTML = document.getElementById("grosse").innerHTML+"<input type='text' name='groesse[<?php echo $i;?>]'>";
            document.getElementById("preis_l").innerHTML = document.getElementById("preis_l").innerHTML+"<input type='text' name='preis_a[<?php echo $p;?>]'>";
            document.getElementById("preis_a").innerHTML = document.getElementById("preis_a").innerHTML+"<input type='text' name='preis_l [<?php echo $r;?>]'><br>";

            <?php
            $i = $i + 1;
            $p = $p + 1;
            $r = $r + 1;
            ?>
        }
    </script>
</head>
<body>

<?php

    if ($_REQUEST['Selected'] == 'Speisekarte')
    {
        echo '<br><br><br><br>';
        echo '<input type="button" value="+" onClick="add()">';
        echo '<form action="insert.php" method="submit">';
        echo '<table border="1">';
        echo '<tr><td>ID</td><td>Name</td><td>Beschreibung</td><td>Größe</td><td>Preis_L</td><td>Preis_A</td></tr>';
        echo '<tr><td><input type="text" id="ID" name="ID"></td>';
        echo '<td><input type="text" id="Name" name="Name"></td>';
        echo '<td><input type="text" id="Beschreibung" name="Beschreibung"></td>';
        echo '<td id="groesse"></td>';
        echo '<td id="preis_l"></td>';
        echo '<td id="preis_a"></td>';
        echo '</tr></table><input type="hidden" value="Speisekarte">';
        echo '<button type="submit">OK</button></form>';

    }

?>
</body>
</html>

Я хочу, чтобы кто-то щелкнул + -Button, моя форма получает 3 текстовых поля больше в таблице с конкретными идентификаторами. Я также пробовал его с помощью div -Tags, но это тоже не сработало.

Я надеюсь, что кто-то может мне помочь.

Теги:

1 ответ

0

Вы не можете использовать php clientside, он анализируется на сервере только тогда, когда посетитель запрашивает страницу с помощью GET или POST, поэтому использование $ я = $ я + 1 не будет работать с клиентами. Кстати, вместо этого используйте $i++.

Вы можете решить это только с помощью javascript или, в качестве альтернативы, отправить форму и снова представить форму с дополнительными полями, чтобы вы могли сделать это с помощью php.

Я рекомендую вам взглянуть на jQuery и проверить этот ответ с помощью демонстрации: как использовать jQuery для динамического добавления элементов формы (кредиты для PSL)

  • 0
    Я создал свою базу сценариев по этой ссылке

Ещё вопросы

Сообщество Overcoder
Наверх
Меню