2012-01-19 12 views
0

下のテキストボックスに入力された値を取得するにはどうすればよいですか?今jQueryでフォーカスが失われるとテキストボックスに入力されたテキストを取得します

var idT = $("td:contains('1.')").next().next().children().eq(0).attr('name'); 

私はテキストボックスに入力された値を与える関数を記述したいと思います:これは私の名前テキストボックスのを与える

<tr> 
    <td class="TextBold" >1.</td> 
    <td class="TextBold" >Content for Question 1:</td> 
    <td class="TextBold" > 
     <input name="ctl00$DefaultContent$ctl2" type="text" class="TextNormal" /> 
    </td> 
    </tr> 

。 ...なぜあなたのVAR名がidある

$('input[name="' + idT + '"]').blur(function() { 
      alert($(this).val());  
     }); 
+0

あなたは '$'私の更新JSfiddleを参照してくださいを "エスケープ" する必要がありますを参照してください。 – gdoron

答えて

2

$('input[name="ctl00$DefaultContent$ctl2"]').val()は、テキストフィールドの値を指定する必要がありますが、実際には "ctl00 $ DefaultContent $ ctl2"ですか?

このjsFiddle

+0

これは動的に生成されるコントロールです。ソースコードを調べると、これは入力コントロールの名前のように見えます。 – BumbleBee

3
$('input[name=' + id+ ']').blur(function() { 
    alert($(this).val()); 
}); 

お知らせしますが、値は名前である:よう

何か:

$('input[name^=ctl00$DefaultContent$ctl2]').blur(function() { 
     alert($(this).val());  
    }); 

は、これは私のために働きましたか?

は私が変わってしまうまで:

var id = $("td:contains('1.')").next().next().children().eq(0).attr('id'); 

$('#' + id).blur(function() { 
    alert($(this).val()); 
}); 

JSFiddle

あなたはjQueryのセレクタでそれを使用するために\\$"escape"$に持っています。

+0

gdoronありがとうございます。私はあなたが投稿したソリューションを試しましたが、何も何も起こりません。( – BumbleBee

+0

@BumbleBee、あなたのセレクタでID \名前を取得しましたか?問題はおそらくそこにあります。 – gdoron

+0

@BumbleBee、[JSFiddle](http://jsfiddle.net/)を作成し、問題のある箇所を確認してください。 – gdoron

関連する問題