надеюсь простой вопрос,
То, что я хочу сделать, - захватить содержимое моего div, включая теги html любых дочерних элементов, и вставить его в скрытый ввод в форме каждый раз, когда я нажимаю клавишу в другом поле ввода
например, если мой div:
<div><p>Hello</p></div>
Я хочу скопировать:
<p>Hello</p>
Как строка
Я пытался:
$(document).ready(function(){
$('#textarea').keyup(function() {
$('#hidden-input').html($('#div'));
});
});
Единственная проблема - содержимое моего скрытого ввода содержит div и аргументы div, например, это выглядит так:
<input type="hidden" id="hidden-input" name="foo" value="bar">
<div> (DIV CONTENTS) </div>
</input>
Я только хочу (DIV СОДЕРЖАНИЕ) из вышеизложенного, нет div. Как это:
<input type="hidden" id="hidden-input" name="foo" value="bar">
(DIV CONTENTS)
</input>
просто выполните:
$(document).ready(function(){
$('#textarea').keyup(function() {
$('#hidden-input').html($('#div').html());
});
});
</input>
- недопустимый тег конца ввода. Входы - это теги, содержащие теги, поэтому нет необходимости </
поэтому вы можете понять, что вход не содержит HTML-содержимого, а value=""
поэтому я предлагаю вам использовать скрытый элемент <textarea id="hidden-input"></textarea>
$(function(){ // DOM ready
$('#textarea').keyup(function() {
var copy = $('#div').html();
$('#hidden-input').html( copy );
});
});
каждый раз, когда я нажимаю клавишу в другом поле ввода
у вас есть несколько полей ввода, чем не использовать ID
в $('#textarea').keyup(
а скорее общее имя класса.
Вот демонстрация именно того, о котором вы просили (или, по крайней мере, как вы это объяснили)
поэтому я предлагаю вам переформулировать ваш вопрос.
Вопрос нелогичен. Мы можем указать значение для поля ввода, а функция val используется для этого
val(): этот метод обычно используется для установки значений полей формы. http://api.jquery.com/val/
$(document).ready(function(){
$('#textarea').keyup(function() {
$('#hidden-input').val($('div').html());
})
});
value
ввода. Он хочет установить внутренний текст ввода (что в любом случае не логично, но все же.)
<input />
.. там есть конечный тег на входе ..</input>
действительно? developer.mozilla.org/en-US/docs/Web/HTML/Element/Input