Мне нужно добавить в настоящее текстовое поле значение без замены существующего текста. Я пробовал с этим кодом.Как добавить текст в текстовое поле с помощью jQuery?
if(len.length==4){
$("-").appendTo("#date").val();
}
но это не удалось.
Мне нужно добавить в настоящее текстовое поле значение без замены существующего текста. Я пробовал с этим кодом.Как добавить текст в текстовое поле с помощью jQuery?
if(len.length==4){
$("-").appendTo("#date").val();
}
но это не удалось.
Хотя у вас есть несколько (но не все) правильные ответы, я хочу показать еще один способ сделать это:
$('#date').val(function(index, value) {
return value + '-';
});
.val(function(index, value))
функция (в dex, value) Функция, возвращающая значение для установки. это текущий элемент. Получает индексную позицию элемента в наборе и старое значение в качестве аргументов.
Если вы не хотите использовать function
для делать это, используйте:
var $date = $('#date');
$date.val($date.val() + '-');
thanx dr. Это работает. И приятное объяснение. –
попробовать:
$('#date').val($('#date').val() + '-');
Он заменяет настоящий текст. –
[ЭТО] (http://jsfiddle.net/teneff/T9mUT/) не работает – Teneff
после редактирования, он работает. Благодарю. –
Вы должны получить текущее значение, и добавить к этому.
var $date = $('#date');
$date.val($date.val() + '-');
спасибо dr. он работает –
+1 для кэширования элемента DOM. – gdoron
Самый элегантный способ, который я нашел, включает в себя не столько использование jQuery.
if (len.length === 4) {
var date = $('#date')[0] // faster to write than "document.getElementById('date')"
date.value += '-'
}
Вы не передаете контекст функции в '.val()', поэтому ссылка 'this' может отличаться от вашей мысли. Это определенно не будет '' $ ('# date') 'вы только что выбрали. –
[ЭТО] (http://jsfiddle.net/teneff/T9mUT/) - это ваш код в jsFiddle и он не работает – Teneff
Хорошо, только 'this.value' работает .. как-то. @RichardNeilIlagan прав в том, что «это» неверно. http://jsfiddle.net/Ralt/T9mUT/1/ –
jQuery('#date').val(jQuery('#date').val() + '-');
Зачем вы запрашиваете DOM дважды? – gdoron
Я согласен, что это не нужно, но просто пыталась показать основной синтаксис. –
Я просто делал это. Я использовал .append (myValue); здесь я перехожу через набор результатов Ajax:
$.each(result, function (i, obj) {
$.each(obj, function (i, item) {
$('#txtValueList').append(item);
})
})
Это поле ввода с текстом типа или другим элементом с текстом в нем. Там нет такой вещи, как текстовое поле в HTML и из ваших комментариев ниже, кажется, что это не поле ввода –
это поле ввода с текстом типа. Мне нужно добавить - после первых четырех символов. –