2016-05-13 4 views
0

で文字列を持ったときに、私は隠された入力ボックスのいずれかがこのようなものですページがあります。私のjqueryで認識できない表現中括弧

<input type="hidden" name="RequestID" id="RequestID" value="{834b3866-6373-4f2d-8e0b-f28da66c3317}" /> 

私は

$('#btnGetId').on('click', function(){ 
    var reqID = $('#RequestID').val(); 
    alert(reqID); 
}); 
ようRequestIDを取得したいが

コードを実行すると、私のコンソールは言う:

認識されていない表現{834b3866-6373-4f2d-8e0b-f28da66c3317}

これが原因で、中括弧であるので、私は、私は、コードを実行すると、私のアラートが言うこの

var reqID = $('#RequestID').val(); reqID.replace(/[{}]/g, '\\$&'); 

を試してみました:[オブジェクト、オブジェクト]

私が必要とするのは、私の警告欄に{834b3866-6373-4f2d-8e0b-f28da66c3317}というguidがありますが、私が間違っていることはわかりません。

+5

あなたが私たちに表示していないそのエラーを生成するいくつかの他のコード。見る; https://jsfiddle.net/a4ek9z0n/ – Jamiec

+0

_ "コードを実行しているとき、私のコンソールはこう言っています: '認識できない式{834b3866-6373-4f2d-8e0b-f28da66c3317} "" _あなたにスタックニッ実証する? – guest271314

+0

はい、@ Jamiecは正しいです。投稿したコードでそのエラーが発生していない可能性があります。あなたのプログラムには他のコードがなければなりません。コンソールに行番号が表示されます。それは問題が本当にどこにあるのかを示します。 –

答えて

-1

データを使用しよう-...値の代わりに属性:

HTMLは次のようになります。

<input type="hidden" name="RequestID" id="RequestID" data-val="{834b3866-6373-4f2d-8e0b-f28da66c3317}" /> 

とJSは次のようになります。ここ

$('#btnGetId').on('click', function(){ 
    var reqID = $('#RequestID').attr("data-val"); 
    alert(reqID); 
}); 

デモ:

https://jsfiddle.net/7c48867q/3/

+0

これはテストされ、動作しています。 – labzus

+0

オリジナルもそうでした;) – Jamiec

0

私が持っていたオリジナルのコードでは:

$('#btnGetId').on('click', function(){ 
    var reqID = $('#RequestID').val(); 
    alert($(reqID)); 
}); 

私は今、それが働いている

$('#btnGetId').on('click', function(){ 
    var reqID = $('#RequestID').val(); 
    alert(reqID); 
}); 

にそれを変更しました。