2012-08-23 80 views
0
$("[id$=HealthCareReimbursementPerPayPeriodTxt]").blur(function (evt) { 
try { 
    val1 = (this.value); 
    alert(val1); 
    val2 = $("[id$=HealthCareReimbursementNumPayPeriodsTxt]"); 
    alert(val2.value); 
} 
catch (e) { } 
}); 

我讓它們被通配符選中,因爲它在母版頁中。 val1工作得很好(文本框),但val2(標籤)從來沒有得到我所需要的。我也試過val2.text,val2.val,valueOf(val2),val2.html,val2.attr('text')。我要麼獲得Object [object],undefined或者一些長函數字符串。爲什麼我找不到使用jquery的標籤文本?

<asp:Label ID="HealthCareReimbursementNumPayPeriodsTxt" runat="server"> 

,如果有幫助,我設置這個標籤的文本中的代碼隱藏

+1

這是一個'ClientID'問題? –

+0

我不這麼認爲?我不確定它是如何工作的,但如果我正在使用文本框,那麼爲什麼這個標籤會出現?他們就在彼此旁邊。 – proseidon

+0

'val2'被設置爲ID爲'HealthCareReimbursementPerPayPeriodTxt'結尾的所有對象的數組,但是您包含的''有一個與選擇器 – jimmym715

回答

0

無論val2.htmlval2.text應該工作。 .val僅適用於輸入和其他控件,如HiddenFields,不適用於僅轉換爲HTML元素(如標籤)的控件。

0

在你的代碼,您需要更改這個

val2 = $("[id$=HealthCareReimbursementNumPayPeriodsTxt]"); 

通過

val2 = $("[id$=HealthCareReimbursementNumPayPeriodsTxt]")[0]; 

jQuery選擇器不直接返回DOM對象。你也可以使用一個類選擇

<asp:Label ID="HealthCareReimbursementTotalLbl" Text="0.00" runat="server" 
    CssClass="healthCareReimbursementTotalLbl"></asp:Label> 

然後你可以做

$(function(){ 
    $(".healthCareReimbursementTotalTxt").blur(function (evt) { 
    try { 
     val1 = (this.value); 
     alert(val1); 
     val2 = $(".healthCareReimbursementTotalLbl")[0]; 
     alert(val2.value); 
    } 
    catch (e) { } 
    }); 
}); 
+0

這不起作用。它仍然得到了所有相同的結果,這導致我相信它發現標籤就好。 – proseidon

+0

你需要使用'val2 [0] .value'而不是'val2.value' –

+0

仍然沒有定義:( – proseidon

0

試試這個:

val2 = $("[id$=HealthCareReimbursementNumPayPeriodsTxt]")[0].val(); 
+0

仍然未定義 – proseidon

+0

怎麼回事alert(val2.text());'? – LorDex

0

你說的標籤是越來越變成<span></span>,這不會告發」沒有val屬性。我認爲你需要使用.html(),因爲你需要之間的文字的標籤。

val2 = $("[id$=HealthCareReimbursementNumPayPeriodsTxt]").html();

0

試試這個

$("[id$=HealthCareReimbursementPerPayPeriodTxt]").blur(function (evt) { 
       try { 
        val1 = (this.value); 
        alert(val1); 

        // first try wether your are getting this elemnt or not 
        alert($("[id$=HealthCareReimbursementNumPayPeriodsTxt]").length); 
        if ($("[id$=HealthCareReimbursementNumPayPeriodsTxt]").length > 0) { 
         alert("item found"); 
         val2 = $("[id$=HealthCareReimbursementNumPayPeriodsTxt]"); 
         alert(val2.val()); 
         // if it does not work try 
        // alert(val2.html()); or alert(val2.text); 
        } 
        else { 
         alert("item not found"); 
        } 
       } 
       catch (e) { } 
      }); 
相關問題