31

我有一个平常的标签

<label class="mytxt"  style="color: #662819;" id ="telefon"></label>

我正在设置这样的值:

document.getElementById('telefon').innerHTML = userDetails.phone;

在标签具有某些值之后,例如"123".

pagesource中,我在 "><" 中有一个没有设置值的标签,但我认为它是输出:

pagesource: <label class="mytxt"  style="color: #662819;" id ="telefon"></label>

我的问题是当我喜欢GET一个值时。我尝试了以下标准

value = $("#telefon").val(); 
document.getElementById('telefon').value 

没有任何作用,价值总是“未定义”。为什么会这样,即使我在浏览器中看到它?

4

2 回答 2

67

您需要text()或不需要html()标签val()该函数不应为标签调用,而是用于获取输入值,如文本或复选框等。

改变

value = $("#telefon").val(); 

value = $("#telefon").text(); 
于 2013-10-07T15:35:54.800 回答
9

标签不是表单元素。他们没有value. 他们有innerHTMLtextContent

因此,

$('#telefon').html() 
// or
$('#telefon').text()

或者

var telefon = document.getElementById('telefon');
telefon.innerHTML;

如果您从表单元素开始,请查看它的labels列表。那是,

var el = $('#myformelement');
var label = $( el.prop('labels') );
// label.html();
// el.val();
// blah blah blah you get the idea
于 2013-10-07T15:37:03.150 回答