немогу передать значение из функции в функцию js
Доброе утро! Прошу не судить строго и помочь небольшим примером.
Есть код js который размножает строки в таблице <div class="rows"> <table id="SmetaTable"> <thead><tr><td>№</td><td>Наименование</td><td>Ед. изм.</td><td>Объем</td><td>Мат-ал</td><td>СМР</td><td>Всего</td</</thead> <tbody id="form"> </tbody> <tr> <td colspan="7"> <button type="button" id="dobavit">Новая строка</button> <button type="button" id="dobavit2">Новый раздел</button> </td> </tr> </table> </div> И js код var $btn = $('#dobavit'); // кнопка создание подраздела (строки) var $btns = $('#dobavit2'); //Кнопка для создание раздела var $nums = 2; var $numsStroca =1; $btns.click(function (ResutNms) { // Функция создает раздел с input внутри var $ResutNms = $nums++; $('#form').append("<tr><td colspan='7'><input id='Razdel' type='' value='"+$ResutNms+".'/></td></tr>"); }); $btn.click(function () { // Функция создает строку var $NumPodstr = numsStroca++; var $result = ResutNms+'.'+NumPodstr ; // Должно получиться 1.1, 1.2. и т.п. $('#form').append("<tr><td>"+result+"</td><td id='SmetaTableName'><input type='text' /></td><td id='SmetaTableSelec'><select><option></option></select></td><td id='SmetaTableObem'><input type='text' value='' /></td><td id='SmetaTableMat'><input type='text' value='' /></td><td id='SmetaTableSMR'><input type='text' value='' /></td><td id='SmetaTableItog'><input type='text' value='' /></td></tr>"); }); Так вот все нормально работает но мне нужно сделать нумерацию. то есть при каждом добавление раздела должно быть номер подраздела. нумерация раздела у меня получается, а вот никак не могу провести нумерацию подраздел. Результат должен получиться такой: 1. Раздел 1.1. Строка 1.2. Строка 1.3. Строка 2. Раздел 2.1. Строка 2.2. Строка ... |
У вас в строке 13 используется не описанная переменная ResutNms. То, что она описана в строке 7 не считается. Это другая функция и от туда не видна. Надо перенести описание этой переменной на уровень выше
var $btn = $('#dobavit'); // кнопка создание подраздела (строки) var $btns = $('#dobavit2'); //Кнопка для создание раздела var $nums = 2; var $numsStroca =1; var $NumPodstr; $btns.click(function (ResutNms) { // Функция создает раздел с input внутри $ResutNms = $nums++; $('#form').append("<tr><td colspan='7'><input id='Razdel' type='' value='"+$ResutNms+".'/></td></tr>"); }); $btn.click(function () { // Функция создает строку var $NumPodstr = numsStroca++; var $result = ResutNms+'.'+NumPodstr ; // Должно получиться 1.1, 1.2. и т.п. $('#form').append("<tr><td>"+result+"</td><td id='SmetaTableName'><input type='text' /></td><td id='SmetaTableSelec'><select><option></option></select></td><td id='SmetaTableObem'><input type='text' value='' /></td><td id='SmetaTableMat'><input type='text' value='' /></td><td id='SmetaTableSMR'><input type='text' value='' /></td><td id='SmetaTableItog'><input type='text' value='' /></td></tr>"); }); |
Цитата:
|
Блин, ну ошибся я
В тексте пишу про одно, а в коде сделал другое. Написал про $ResutNms (правильно), а вынес другую переменную var $btn = $('#dobavit'); // кнопка создание подраздела (строки) var $btns = $('#dobavit2'); //Кнопка для создание раздела var $nums = 2; var $numsStroca =1; var $ResutNms; $btns.click(function (ResutNms) { // Функция создает раздел с input внутри $ResutNms = $nums++; $('#form').append("<tr><td colspan='7'><input id='Razdel' type='' value='"+$ResutNms+".'/></td></tr>"); }); $btn.click(function () { // Функция создает строку var $NumPodstr = numsStroca++; var $result = ResutNms+'.'+NumPodstr ; // Должно получиться 1.1, 1.2. и т.п. $('#form').append("<tr><td>"+result+"</td><td id='SmetaTableName'><input type='text' /></td><td id='SmetaTableSelec'><select><option></option></select></td><td id='SmetaTableObem'><input type='text' value='' /></td><td id='SmetaTableMat'><input type='text' value='' /></td><td id='SmetaTableSMR'><input type='text' value='' /></td><td id='SmetaTableItog'><input type='text' value='' /></td></tr>"); }); |
Цитата:
|
Цитата:
|
Если проверить обычный методом передаваемое $ResutNms в alert($ResutNms); то выдает undefined. Получается программа не видит цифру в переменной $ResutNms во второй функции?
|
Всей еруды в чужом коде сразу заметить трудно
Зачем $btns.click(function (ResutNms) { Кто его туда передает? Зачем переменные $ResutNms и ResutNms, $NumPodstr и NumPodstr? var $btn = $('#dobavit'); // кнопка создание подраздела (строки) var $btns = $('#dobavit2'); //Кнопка для создание раздела var nums = 2; var numsStroca =1; var ResutNms ; $btns.click(function () { // Функция создает раздел с input внутри ResutNms = nums++; numsStroca =1; $('#form').append("<tr><td colspan='7'><input id='Razdel' type='' value='"+ResutNms+".'/></td></tr>"); }); $btn.click(function () { // Функция создает строку var NumPodstr = numsStroca++; var result = ResutNms+'.'+NumPodstr ; // Должно получиться 1.1, 1.2. и т.п. $('#form').append("<tr><td>"+result+"</td><td id='SmetaTableName'><input type='text' /></td><td id='SmetaTableSelec'><select><option></option></select></td><td id='SmetaTableObem'><input type='text' value='' /></td><td id='SmetaTableMat'><input type='text' value='' /></td><td id='SmetaTableSMR'><input type='text' value='' /></td><td id='SmetaTableItog'><input type='text' value='' /></td></tr>"); }); |
Юсуф,
что это такое в итоге - статический документ или это хранимые данные? Если хранимые данные то как хранятся? |
Часовой пояс GMT +3, время: 01:52. |