Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 09.06.2014, 10:42
Новичок на форуме
Отправить личное сообщение для Skrims Посмотреть профиль Найти все сообщения от Skrims
 
Регистрация: 09.06.2014
Сообщений: 1

.val() запись в msql со значением 'on'
Всем привет!

Третий день бьюсь над проблемой:

есть два поля (input type text) - 1. Юредицеский адрес организации 2. Физический адрес организации
и чекбокс "Физический такой же как юредический", при выборе которого в поле 2 подставляется значение поля 1.
если чекбокc неактивен, то значение поля 2 обнуляется (.val('')).

Визуально вроде все работает, но после вызова функции в mysql поле 2 постоянно записывается значение "on"
Если чекбокс снимаю и сохраняю данные, то значение поля 2 записывается корректно(пустое поле).

Если не вызывать функцию и указать в поле 2 произвольный текст, то в mysql сохраняет все ок.

Пробовал $( setValue ).attr('value' value ) вместо $( setValue ).val( value ), не помогло.

ниже сама функция и html код

function getInpVal(item) {
    
var eventId = '#' + event.target.id;
var setValue = '#' + event.target.name;
 
    if ($(eventId).is(':checked')){
 
    $(item).keyup(function() {
        var value = $( item ).val();
 
        $( setValue ).val( value );
        $( setValue ).attr('disabled', true);
 
        })
    .keyup();
 
    }else
    {
        $( setValue ).val('');
        $( setValue ).attr('disabled', false);
        $( item ).unbind("keyup");
        
    }
 
}

<input  type="text" name="company_ur_address" id="company_ur_address"><span>Юр. адрес</span>
 
<input  type="text" name="company_fiz_address" id="company_fiz_address"><span >Физ. адрес</span>
 
<input type="checkbox"  onchange="getInpVal(company_ur_address)"  id="fiz-like-ur" name="company_fiz_address"><label for="fiz-like-ur">Такой же как юредический</label>

http://jsbin.com/moborufe/4/ - реализация кода
Ответить с цитированием
  #2 (permalink)  
Старый 09.06.2014, 14:36
Профессор
Отправить личное сообщение для krasovsky Посмотреть профиль Найти все сообщения от krasovsky
 
Регистрация: 21.12.2012
Сообщений: 869

Вместо .attr('disabled', true); попробуй prop(), и смотри в консоли в
network что отправляется при разных ситуациях.
У меня был случай когда я отправлял true/false, а бэкэнд на питоне всегда писал true,ибо это текст. Если отправляется все верно, но записывается неверно, значит рассмотри целесообразность отправки этого инпута вообще, т.е отправляей только если checked, либо разбирайся с конвертацией строк в булево значение на сервере.

Последний раз редактировалось krasovsky, 09.06.2014 в 14:39.
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
автозаполнение текстового поля значением другого поля ilyas-> Элементы интерфейса 2 21.10.2013 08:07
VK - разместить запись на стену lol4eg Общие вопросы Javascript 8 23.02.2013 14:52
Как сделать чтобы пользователь только мог 2 раза прослушать запись? KOTDG AJAX и COMET 0 11.02.2012 22:37
Что означает эта запись? Сергей85 Общие вопросы Javascript 3 13.12.2011 15:10
Заполнение элемента INPUT вычисляемым значением shah Элементы интерфейса 1 29.07.2010 14:11