Установите атрибут фактического значения входа с jQuery

Панель инструментов Веб-разработчика имеет информацию о стилях представления в соответствии с меню CSS, которое скажет Вам, какая CSS применяется к объекту. Существует также функция Edit CSS в том меню, которое позволит Вам изменить CSS на лету, чтобы видеть, как это влияет на страницу.

7
задан Harry 3 October 2013 в 05:04
поделиться

4 ответа

когда вы делаете что-то вроде этого:

$(this).val($(this).val());

это действительно переводится как:

var temp = $(this).val());
$(this).val(temp);

Так что, по сути, это просто возвращение того же значения.

Что вы захотите do находится при загрузке документа или запросе AJAX, сохраняет значение в переменной, а затем извлекает его при сбросе формы.

4
ответ дан 7 December 2019 в 07:46
поделиться

Просто используйте thing.value = "foo"; Проверьте, работает ли это, когда вещь является объектом jQuery, а также обычным объектом DOM. использование attr ('value', $ (this) .val ()) не будет работать так, как вы хотите

0
ответ дан 7 December 2019 в 07:46
поделиться

Я нашел решение этой проблемы ...

При сохранении формы (через AJAX, при успешном обратном вызове):

// Set 'savedValue' attr on elements (for when reset, will reset to last saved values)
$('#myForm input').each(function() {
    $(this).attr('savedValue', $(this).val());
});

При необходимости сбросить форму:

// Reset form
if($('#myForm input:first').attr('savedValue')!=undefined) {
    // Have saved values, reset to last saved values
    $('#myForm input').each(function() {
        $(this).val($(this).attr('savedValue'));
    });
}
else {
    // No saved values, reset form
    $('#myForm')[0].reset();    
}

Это отлично работает с текстовыми полями, и после небольшой настройки вы можете заставить его работать с любым типом ввода. У меня много входов, поэтому я хотел избежать их ручного сохранения / сброса, если это вообще возможно. Это был бы хороший плагин ... может быть, завтра

1
ответ дан 7 December 2019 в 07:46
поделиться

Даже лучше, чем локальная переменная, вы можете использовать методы данных jQuery для сохранения значений сброса вместе с элементом, который нужно сбросить.

При сохранении:

$(this).data("ResetValue", $(this).val());

При сбросе:

$(this).val($(this).data("ResetValue"));

Правильное изменение селекторов и, возможно, добавление неопределенной проверки, как упомянул Райан.

0
ответ дан 7 December 2019 в 07:46
поделиться
Другие вопросы по тегам:

Похожие вопросы: