私は関数を再利用しようとしています。それをindexOf()
の中に入れようとしたときに関数を破る変数を定義しています。私はいくつかの近似を試みましたが、なぜ動作していないのか分かりません。javascript variable inside indexOf
function toggleSelectAll(control, nadaValue) {
var allOptionIsSelected = (control.val() || []).indexOf('"' + nadaValue + '"') > -1;
、toggleSelectAll
はこのように呼ばれている:
function toggleSelectAll(control) {
var allOptionIsSelected = (control.val() || []).indexOf("1") > -1;
あなたが見ることができます:
toggleSelectAll($(this), 1);
が、これは1 subsituteしようとしているコードは、このようなものですJSFiddleの例をいくつか紹介してください:
作品:http://jsfiddle.net/victorRGS/o8cjtoqp/1/
これはしません:あなたはこの上でいくつかの光を投げることができる場合http://jsfiddle.net/victorRGS/o8cjtoqp/2/
それは素晴らしいことです!前もって感謝します!
'.indexOf(nadaValue)'を試してください。 – tcooc
まず、変数名の前後の引用符を削除します。現在、 'indexOf'はリテラル' "1" 'を探します。次に、文字列を渡すか、 'nadaValue.toString()'を検索する必要があります。なぜなら、 'indexOf'は厳密な比較を使用するからです。 – Teemu
私は解決策を見つけました.Teemuが言っているように、 'nadaValue.toString()'を変換しなければならず、それは魅力的に機能しました。あなたの答えをありがとう。このコメントをここに残すか、適切な回答コメントを投稿する必要がありますか? –