Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / Подстановка данных в поля формы / 8 сообщений из 8, страница 1 из 1
28.05.2014, 11:17
    #38654223
Sanjar88
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подстановка данных в поля формы
Доброе время суток, форма состоит из 4 инпутов, можно ли реализовать что бы вбить данные в один инпут а остальные все 3 заполнились из базы автоматом, как с селектом делать я знаю, а вот с инпутом дайте совет как реализовать такое
...
Рейтинг: 0 / 0
28.05.2014, 11:47
    #38654280
SharuPoNemnogu
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подстановка данных в поля формы
так аналогично, к примеру через ajax вешаете событие на keyup(либо focusout, либо кнопка..), отправляете запрос, если пришел ответ раскидываете по инпутам.
...
Рейтинг: 0 / 0
28.05.2014, 12:32
    #38654334
Sanjar88
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подстановка данных в поля формы
с этим разобрался, возник другой вопрос, что делать если эти поля динамические? т.е. их можно добавлять много раз и пот каждый инпут свои данные подставлять ?
...
Рейтинг: 0 / 0
28.05.2014, 12:35
    #38654339
SharuPoNemnogu
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подстановка данных в поля формы
Sanjar88,

оборачиваете каждые 4 поля в div к примеру, какой инфут в данный момент активен будет this, берете parent этого инпута этот самый див, и в нем уже цепляете нужные 3 инпута для заполнения.
...
Рейтинг: 0 / 0
28.05.2014, 12:38
    #38654345
Sanjar88
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подстановка данных в поля формы
можно по подробней ?
вот инпуты
Код: html
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
<table class="table table-responsive inputs">
<thead>
<th>part №</th>
<th>part detail name</th>
<th>Сумма за ед.</th>
<th>кол-во</th>
</thead>

<tr>
<td>
		<select name="otdel" class="form-control" id="otdel" onchange="javascript:selectRegion();">
                <option value="">
				
                </option>
				<?foreach ($get_part as $item):?>
				<option value="<?=$item['id']?>"><?=$item['part_n']?></option>
				<? endforeach;?>
            </select>
</td>
<td><div  name="selectDataPart"></div></td>
<td><div  name="selectDataPrice"></div></td>
<td><input class="form-control" type="text" name="srok" value=""/></td>
</tr>
</table>


вот скрипт
Код: javascript
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
<script type="text/javascript">
function selectRegion(){
        var id_country = $('select[name="otdel"]').val();
        if(!id_country){
                $('div[name="selectDataPart"]').html('');
				$('div[name="selectDataPrice"]').html('');
        }else{
                $.ajax({
                        type: "POST",
                        url: "http://core/ajax.base.php",
                        data: { action: 'showRegionForInsert', id_country: id_country },
                        cache: false,
                        success: function(responce){ $('div[name="selectDataRegion"]').html(responce); }
                });
				$.ajax({
                        type: "POST",
                        url: "http://core/ajax.base.php",
                        data: { action: 'price', id_country: id_country },
                        cache: false,
                        success: function(responce){ $('div[name="selectDataPrice"]').html(responce); }
                });
        };
};
</script>


вот обработчик
Код: php
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
switch ($_POST['action']):
 
    case "showRegionForInsert":

        $sql = "SELECT * FROM `priced` WHERE `id` = '" . mysql_real_escape_string ($_POST['id_country'], $link) . "' ";
        $resource = mysql_query ($sql, $link);
        while ($row = mysql_fetch_assoc ($resource))			
            echo '<input name="otvetstvenniy" class="form-control" id="otvetstvenniy" value="'.$row['detail_name'].'">';


        break;
     case "price":
		$sql = "SELECT * FROM `priced` WHERE `id` = '" . mysql_real_escape_string ($_POST['id_country'], $link) . "' ";
        $resource = mysql_query ($sql, $link);
        while ($row = mysql_fetch_assoc ($resource))
			echo '<input name="b" class="form-control" id="b" value="'.$row['price'].'">';
		break;	 
endswitch;
...
Рейтинг: 0 / 0
28.05.2014, 13:01
    #38654380
SharuPoNemnogu
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подстановка данных в поля формы
авторчто бы вбить данные в один инпут а остальные все 3 заполнились из базы автоматом
так у вас событие срабатывает не на заполнение инпута, а на изменение селекта. И как вы определяете какой именно action надо выполнить? Или они должны заполняться все последовательно?
Если второе, тогда несколько вариантов:
1. Возвращать сразу готовый html по всем action
2. Возвращать json и распарсивать по нужным местам (так же по всем action)
3. Выполнять следующий ajax после success предыдущего, тогда лучше вынести его в отдельную функцию и передавать в нее action и обработчик success
...
Рейтинг: 0 / 0
28.05.2014, 13:04
    #38654385
Sanjar88
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подстановка данных в поля формы
выбрал 1 инпут, остальные 3-ое заполнились автоматом

этих 4 инпутов может быть и 20-30 я имею ввиду 4 инпута 20-30 раз
как мне это обработать, не задавая каждому отдельную функцию ?
...
Рейтинг: 0 / 0
28.05.2014, 13:13
    #38654392
SharuPoNemnogu
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подстановка данных в поля формы
Sanjar88,

При чем тут инпут не пойму, по коду у вас обработчик висит на селекте, при изменении вызывается ф-я selectRegion() которая и подгружает кучу инпутов из базы, которые вы уже потом раскидываете по дивам (кстати поставьте id вместо name).

Что мешает по изменению селекта возвращать сразу весь html?

уберите switch case и вытащите сразу все, а результат вставите в единый контейнер.
...
Рейтинг: 0 / 0
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / Подстановка данных в поля формы / 8 сообщений из 8, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]