2009-05-12 14 views
1

JQueryで次のように実行しますか?JQueryでJavaScript .replaceを実行

var elmOperator = document.getElementById(elm.id.replace('Include', 'Operator')); 

操作されるIDは、Criteria [0] .Includeのようになります。私はCriteria [0] .Operatorである関連IDの変数を作成しようとしています。

ありがとうございます!

答えて

3

ニレはjQueryオブジェクトではなく、DOMオブジェクトであると仮定すると、あなたがこれを行うことができます:

var elmOperator = $("#" + elm.attr('id').replace('Include', 'Operator')); 

を、それはDOMオブジェクトがある場合は、(ほんの少し速くなると思われる)これを行うことができます。

var elmOperator = $("#" + elm.id.replace('Include', 'Operator')); 

もっと大きな疑問があるのはなぜでしょうか。 jQuery selectorsattr()のような基本的なものがわからない場合は、あなたのページはどこでもjQueryを使用していますか?

var operators = $('[id*=Include]').map(function() { 
    return $('#' + $(this).get(0).id.replace('Include', 'Operator')); 
}); 
operators.css('background', 'red'); 

このサンプルで、我々はすべて含める要素を選択された後、1実行:1マッピングをあなたのサンプルのために、それはこのようなものになるだろうので

+0

2番目の例では、すでにDOM要素がある場合、jQueryオブジェクトに変換しません。それはより多くのオーバーヘッドとより多くのタイピングを起動します。比較: "$(elm).attr( 'id')"から "elm.id" – nickf

0

あなたはまだjQueryの古いJavaScriptを使用することができます要素を新しい要素の配列に追加し、最後にすべての演算子の背景を赤に設定します。