Я пытаюсь установить значение скрытого поля в форме с помощью jQuery, но безуспешно.Задать значение скрытого поля в форме с помощью jQuery «.val()» не работает
Вот пример кода, который объясняет проблему. Если я сохраняю тип ввода «текст», он работает без особых проблем. Но, меняя тип ввода на «скрытый», не работает!
<html>
<head>
<script type="text/javascript" src="jquery.js">
</script>
<script type="text/javascript">
$(document).ready(function() {
$("button").click(function() {
$("input:text#texens").val("tinkumaster");
});
});
</script>
</head>
<body>
<p>
Name:
<input type="hidden" id="texens" name="user" value="texens" />
</p>
<button>
Change value for the text field
</button>
</body>
</html>
Я также попытался следующие обходные пути, установив тип входа в «текст», а затем с помощью «дисплей: нет» стиль для ввода. Но это тоже терпит неудачу! Кажется, у jQuery есть некоторые проблемы с установкой скрытых или невидимых полей ввода.
Любые идеи? Есть ли обходной путь для этого, который действительно работает?
Энди, спасибо за быстрые ответ. Я на самом деле пробовал сначала «#texens», а затем «#input: hidden # texens», и ни один из них не работал. Когда я изменил тип ввода в форме от «hidden» до «text» и «#input: hidden: texens» до «#input: text: texens», он работал без особых проблем. «#input: text # texens» был опечатан выше, и должен был быть «#input: hidden # texens» или просто «#texens», как вы только что упоминали. Итак, кажется, что значения скрытого поля не изменяются. – texens
@texens: Я подозреваю, что проблема кроется в другом месте. Как видно из примера, с которым я связан, 'val()' отлично работает на скрытом входе, изменяя значение с "not changed" на "changed". Я пересмотрел пример, чтобы включить код, который вы вставили выше, с предупреждением для подтверждения изменения значения: http://jsbin.com/elovo/2/edit –
Энди, Большое спасибо за пример. Я запустил код, упомянутый выше, и он работает точно так, как предполагается. И предупреждение действительно подтверждает, что значение было изменено. Я открыл источник страницы, используя функцию «Просмотр страницы источника» Firefox. И в источнике страницы он по-прежнему показывает старое значение, а не новое значение (даже для кода в пастебине, упомянутом выше). Но поле предупреждения подтверждает измененное значение. Итак, я предполагаю, что это проблема Firefox (или я слишком глуп и не замечаю что-то важное?). Еще раз спасибо за ваше время :) – texens