У меня есть этот код:
<div id='html'><input type='text' value='' /></div><br><a onClick="alert(document.getElementById('html').innerHTML);">click me</a>
Если вы измените входное значение и нажмите "кликнуть меня", вы не увидите действительное значение ввода. Есть ли какая-то пропедия вместо "innerHTML", которая получает реальные значения?
PS: Я использую простой javascript. Я не могу использовать какую-либо библиотеку.
Это будет работать, но это довольно грубо:
<div id='html'>
<input type='text' value=''/>
</div>
<script>
function LinkClick()
{
var ele = document.getElementById('html');
ele.children[0].setAttribute("value",ele.children[0].value);
alert(ele.innerHTML);
}
</script>
<br><a onClick="LinkClick()">click me</a>
Я вижу, что ComCrude просто предоставил этот точный ответ в комментариях
Элемент elem.innerHTML
- это HTML-код внутри элемента. В этом случае innerHTML
является пустой строкой, поскольку в теге нет содержимого.
Вы должны использовать input_elem.value
для получения value
свойства входного элемента.
value
, хотя вам также нужно будет найти дочерний элемент (вход): jsfiddle.net/EQ88q/2document.getElementById('html').innerText