2011-09-17 24 views
19

Tôi muốn một chút mã jQuery sẽ cho phép tôi tìm nhãn cho điều khiển khi tôi nhấp vào hộp văn bản ... vì vậy trong HTML của tôi, tôi có:Sử dụng jQuery để tìm nhãn cho điều khiển hoặc hộp văn bản đã chọn

<label id="ctl00_WebFormBody_lblProductMarkup" for="ctl00_WebFormBody_txtPriceAdjustment">This Is My Label Value</label> 

<input type="text" style="width:29px;" onclick="alert('label value here');" title="Here is a title" id="ctl00_WebFormBody_txtPriceAdjustment" maxlength="3" name="ctl00$WebFormBody$txtPriceAdjustment"> 

vì vậy, khi tôi bấm vào textbox của tôi, tôi muốn (ví dụ) để làm một cảnh báo ... với văn bản mà là trong nhăn của tôi - vì vậy trong trường hợp này nó sẽ cảnh báo: "Đây là nhãn của tôi giá trị"

Hy vọng rằng sẽ có ý nghĩa :)

Trả lời

2
$("#ctl00_WebFormBody_txtPriceAdjustment").bind("click",function(){ 
    alert($("label [for=" + this.id + "]").html()); 
}); 

hoặc có thể

alert($(this).closest("label").html()); 

tùy thuộc vào đánh dấu của bạn, bạn chỉ có thể chọn các anh chị em tiếp theo hoặc trước đó quá.

2

Trong một mã HTML như thế này một:

<label for="input-email">Email</label> 
<input type="text" name="input-email" value="" /> 

Bạn có thể tìm nội dung nhãn như thế này:

$('label[for="input-email"]').html(); 
+1

Các cho thuộc tính trên thẻ nhãn phải tương ứng với thuộc tính id trên đầu vào. –

1

thử điều này:

$('input[type=text]').focus(function(){ 
    alert($('label[for=' + $(this).attr('id') + ']').html()); 
}); 
38

Sử dụng bộ chọn thuộc tính [] như [for='+ this.id +'], trong đó this.idID của focus ed hiện label

$('input').on("focus", function() { 
 
    var labelText = $('label[for='+ this.id +']').text(); 
 
    console.log(labelText); 
 
});
<script src="//ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 

 
<label for="inp">This Is My Label Value</label> 
 
<input id="inp" type="text" >

+2

Id đi với điều này nhưng có vẻ như bạn đang sử dụng các hình thức web asp.net để sử dụng clientID kiểm soát thực tế của bạn: $ ('<% = txtPriceAdjustment.ClientID%>'). Click (function() {... v.v. Điều này sẽ làm cho mã của bạn mạnh mẽ hơn về việc nhận được ID kiểm soát được hiển thị –

0
$('#ctl00_WebFormBody_txtPriceAdjustment').click(function() { 
    alert($('#ctl00_WebFormBody_lblProductMarkup').text()); 
}); 
0

Để làm điều đó với javascript

<script type="text/javascript"> 
function displayMessage() 
{ 
alert(document.getElementById("ctl00_WebFormBody_lblProductMarkup").innerHTML); 
} 
</script> 

<label id="ctl00_WebFormBody_lblProductMarkup" for="ctl00_WebFormBody_txtPriceAdjustment">This Is My Label Value</label> 

<input type="text" style="width:29px;" onclick="displayMessage()" title="Here is a title" id="ctl00_WebFormBody_txtPriceAdjustment" maxlength="3" name="ctl00$WebFormBody$txtPriceAdjustment"> 
Các vấn đề liên quan