Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 28.01.2021, 13:48
Аспирант
Отправить личное сообщение для venom1996 Посмотреть профиль Найти все сообщения от venom1996
 
Регистрация: 10.11.2020
Сообщений: 69

как генерировать id инпутов ?
document.getElementById("addRow").onclick = function() {
            var row = document.createElement("tr");
            row.innerHTML = "<form method=\"post\" id=\"ajax_form\" action=\"\" > <tr style=\"height:15.75pt\">\n" +
                "                <td style=\"width:156.35pt; border-style:solid; border-width:0.75pt; padding-right:5.03pt; padding-left:5.03pt; vertical-align:top\">\n" +
                "                    <p style=\"margin-top:0pt; margin-bottom:0pt; text-align:center; font-size:12pt\"><input type='text' name=namebank' id='namebank' > <span\n" +
                                "                                style=\"font-family:&#39;Times New Roman&#39;; font-weight:bold\">&nbsp;</span></p></td>\n" +
                                "                <td colspan=\"4\"\n" +
                                "                    style=\"width:119.5pt;; border-style:solid; border-width:0.75pt; padding-right:5.03pt; padding-left:5.03pt; vertical-align:top\">\n" +
                                "                    <p style=\"margin-top:0pt; margin-bottom:0pt; text-align:center; font-size:12pt\"><input type='number' name='numzadoljen' id='numzadoljen'> <span\n" +
                                "                                style=\"font-family:&#39;Times New Roman&#39;; font-weight:bold\">&nbsp;</span></p></td>\n" +
                                "                <td colspan=\"3\"\n" +
                                "                    style=\"width:96.35pt; border-style:solid; border-width:0.75pt; padding-right:5.03pt; padding-left:5.03pt; vertical-align:top\">\n" +
                                "                    <p style=\"margin-top:0pt; margin-bottom:0pt; text-align:center; font-size:12pt\"><input type='date' name='datedogovor' id='datedogovor' style='width: 125px;'><span\n" +
                                "                                style=\"font-family:&#39;Times New Roman&#39;; font-weight:bold\">&nbsp;</span></p></td>\n" +
                                "                <td style=\"width:67.15pt; border-style:solid; border-width:0.75pt; padding-right:5.03pt; padding-left:5.03pt; vertical-align:top\">\n" +
                                "                    <p style=\"margin-top:0pt; margin-bottom:0pt; text-align:center; font-size:12pt\"><input type='date' name='dateprosrochen' id='dateprosrochen'><span\n" +
                                "                                style=\"font-family:&#39;Times New Roman&#39;; font-weight:bold\">&nbsp;</span></p></td>\n" +
                                "                <td style=\"width:71.35pt; border-style:solid; border-width:0.75pt; padding-right:5.03pt; padding-left:5.03pt; vertical-align:top\">\n" +
                                "                    <p style=\"margin-top:0pt; margin-bottom:0pt; text-align:center; font-size:12pt\"><input type='number' name='summplatcredit' id='summplatcredit'> <span\n" +
                                "                                style=\"font-family:&#39;Times New Roman&#39;; font-weight:bold\">&nbsp;</span></p></td>\n" +
                                "                <td style=\"vertical-align:top\"></td>\n" +
                                "            </tr></form>";
                            document.getElementById("node").appendChild(row);
                        }

есть такая таблица, при нажатии на кнопку добавляется ещё одна и тд, как сделать что бы при нажатии на кнопку ко всем инпутам добавлялся новый id ? к примеру щас namebank, следующая будет namebank2
Ответить с цитированием
  #2 (permalink)  
Старый 28.01.2021, 13:53
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,075

venom1996,
var num = 0;
    document.getElementById("addRow").onclick = function() {
            num++;
            var row = document.createElement("tr");
            ....    id='namebank"+num+"'
Ответить с цитированием
  #3 (permalink)  
Старый 28.01.2021, 14:10
Аспирант
Отправить личное сообщение для venom1996 Посмотреть профиль Найти все сообщения от venom1996
 
Регистрация: 10.11.2020
Сообщений: 69

а вопрос ещё, как мне отправить данные с этой таблицы инпутов ? отправляю через ajax

$.ajax({
                                                method: "POST",
                                                url: "http://test5.ru/local/anketa/main.php",
                                                data: {
                                                    ajax_form: $("#ajax_form").serialize(),
                                                     },
                                                success: function(data) {
                                                    console.log(data);
                                                },
                                                error: function(er) {
                                                    console.log(er);
                                                }
                                            });

но отправляются пустые значения
Ответить с цитированием
  #4 (permalink)  
Старый 28.01.2021, 14:31
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,075

venom1996,
name тоже надо менять
Ответить с цитированием
  #5 (permalink)  
Старый 28.01.2021, 14:38
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,075

venom1996,
на всякий случай id это уникальный идентификатор, $("#ajax_form") это первая форма с таким id.
Ответить с цитированием
  #6 (permalink)  
Старый 28.01.2021, 14:57
Аватар для voraa
Профессор
Отправить личное сообщение для voraa Посмотреть профиль Найти все сообщения от voraa
 
Регистрация: 03.02.2020
Сообщений: 2,709

Сообщение от venom1996
<form method=\"post\" id=\"ajax_form\" action=\"\" > <tr style=\"height:15.75pt\">
А такое проскакивает?
Вроде y <tr> родителем может быть только <table> <tbody> <thead>, или<tfoot>.
Ответить с цитированием
  #7 (permalink)  
Старый 28.01.2021, 15:10
Аспирант
Отправить личное сообщение для venom1996 Посмотреть профиль Найти все сообщения от venom1996
 
Регистрация: 10.11.2020
Сообщений: 69

тогда как мне отправить эту таблицу с инпутами ?
Ответить с цитированием
  #8 (permalink)  
Старый 28.01.2021, 15:12
Аватар для voraa
Профессор
Отправить личное сообщение для voraa Посмотреть профиль Найти все сообщения от voraa
 
Регистрация: 03.02.2020
Сообщений: 2,709

Сообщение от venom1996
тогда как мне отправить эту таблицу
А почему обязательно это должна быть таблица?
Ответить с цитированием
  #9 (permalink)  
Старый 28.01.2021, 15:15
Аспирант
Отправить личное сообщение для venom1996 Посмотреть профиль Найти все сообщения от venom1996
 
Регистрация: 10.11.2020
Сообщений: 69

ну потому что там таблица с инпутами , а вообще нужно просто отправлять все значения инпутов в этой таблице на мой обработчик,и не получается обернуть таблице в форму

Последний раз редактировалось venom1996, 28.01.2021 в 15:35.
Ответить с цитированием
  #10 (permalink)  
Старый 28.01.2021, 15:38
Аватар для voraa
Профессор
Отправить личное сообщение для voraa Посмотреть профиль Найти все сообщения от voraa
 
Регистрация: 03.02.2020
Сообщений: 2,709

Я ни на чем не настаиваю. Дело ваше.
Просто браузеры работают по стандартам и правилам HTML, а не по тому, что вам хочется.
Вот такой простой пример
<html>
<head>
</head>
<body>
<table>
	<form>
		<tr>
			<td><input type=text name=n11></td>
			<td><input type=text name=n12></td>
			<td><input type=submit name=s1></td>
		</tr>
	</form>
	<form>
		<tr>
			<td><input type=text name=n21></td>
			<td><input type=text name=n22></td>
			<td><input type=submit name=s2></td>
		</tr>
	</form>
	<form>
		<tr>
			<td><input type=text name=n31></td>
			<td><input type=text name=n32></td>
			<td><input type=submit name=s3></td>
		</tr>
	</form>
</table>
</body>
</html>

Браузер превращает это в
<html><head>
</head>
<body>
<table>
	<form></form>
		<tbody><tr>
			<td><input type="text" name="n11"></td>
			<td><input type="text" name="n12"></td>
			<td><input type="submit" name="s1"></td>
		</tr>
	
	<form></form>
		<tr>
			<td><input type="text" name="n21"></td>
			<td><input type="text" name="n22"></td>
			<td><input type="submit" name="s2"></td>
		</tr>
	
	<form></form>
		<tr>
			<td><input type="text" name="n31"></td>
			<td><input type="text" name="n32"></td>
			<td><input type="submit" name="s3"></td>
		</tr>
	
</tbody></table>

</body></html>

Формы отдельно, строки с инпутами отдельно. Вне форм.
Ваше дело, можете спорить с браузером.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как создается function Function(){} ? Cepairda Общие вопросы Javascript 0 10.02.2016 15:03
переманную как условие в if блок xas Общие вопросы Javascript 3 02.02.2016 21:17
initComponent: Как получить данные родителя и как получить store для вызова load()? Пролетарий ExtJS 76 04.07.2015 09:22
Как сделать что бы картинки с другого url отображались как свои zlodey Серверные языки и технологии 1 04.05.2015 21:30
Как правильно реализовать такой функционал? Julian Общие вопросы Javascript 3 16.01.2015 12:34