Я не являюсь веб-программистом, но я создаю простое веб-приложение, которое имеет форму, в которой пользователь может ввести ряд точек (x, y, z), но я не знаю, сколько пользователей собираюсь войти. Я не хочу догадываться о возможном максимуме (возможно, 100?) И ставить 100 полей в форме, потому что это выглядело бы уродливо. Самый простой способ добавить дополнительные поля (или показать поля), когда пользователь вводит данные без обращения к серверу.
В настоящее время я просто использую html и php, но я предполагаю, что для этого мне нужен javascript?
В настоящее время мой код выглядит так, поскольку пользователь вводит данные, я хочу, чтобы появилась другая строка.
<form action="edit.php" method="post"> <table border=1> <tr> <td> <td>X <td>Y <td>Z </tr> <tr> <td>1</td> <td><input type=text name=x1 size=10 value="0.4318"></td> <td><input type=text name=y1 size=10 value="0.0000"></td> <td><input type=text name=z1 size=10 value="0.1842"></td> </tr> <tr> <td>2</td> <td><input type=text name=x2 size=10 value="0.4318"></td> <td><input type=text name=y2 size=10 value="0.0000"></td> <td><input type=text name=z2 size=10 value="-0.1842"></td> </tr> <tr> <td>3</td> <td><input type=text name=x3 size=10 value="-0.3556"></td> <td><input type=text name=y3 size=10 value="0.0000"></td> <td><input type=text name=z3 size=10 value="0.1636"></td> </tr> ... I want more to appear here... </table> <button name="submit" value="submit" type="submit">Save</button> </form>
Любая идея – самый простой способ? Благодаря…
Я бы использовал jQuery и добавил новые входы.
Да, вы, скорее всего, будете использовать javascript. Вы можете использовать это или написать свой собственный, используя его в качестве ссылки:
Я создал нечто похожее, и я думаю, что это поможет вам. Я использовал jQuery для динамического создания полей ввода. Проверьте эту ссылку: динамически добавьте поля формы
Что вы говорите, так это то, что вы вручную записываете теги ввода? Или вы говорите, что хотите динамическое действие, когда пользователь нажимает кнопку и добавляет больше строк таблицы?
В любом случае для вашего кода вам просто нужен цикл, например. Я предполагаю, что $ data – это любые данные, которые вы хотите установить на основе массива, который, вероятно, из базы данных или чего-то еще:
<?php for($i=0, $iMaxSize=count($data); $i<$iMaxSize; $i++) { ?> <tr> <td><?= $i+1 ?></td> <td><input type=text name=x1 size=10 value="<?=$data[$i]['something']"></td> <td><input type=text name=y1 size=10 value="<?=$data[$i]['somethingelse']"></td> <td><input type=text name=z1 size=10 value="<?=$data[$i]['somethingelseagain']"></td> </tr> <?php } // end for ?>
Конечно, вы не можете копировать и пропустить вышеупомянутое, но это хорошая отправная точка.
Чтобы динамически это делать, вы не можете использовать php. Похоже, что вы хотите использовать javascript ajax и php.
Добавляет HTML ко всем абзацам.
<!DOCTYPE html> <html> <head> <style> p { background:yellow; } </style> <script src="http://code.jquery.com/jquery-1.9.1.js"></script> </head> <body> <p>I would like to say: </p> <script> $("p").append("<strong>Hello</`enter code here`strong>"); </script> </body> </html>