2012-02-17 11 views
0

私はドロップダウン選択ボックスを個別に更新している画像がたくさんあります。私は次のものを使用しています:replaceContent(number)と別のselectIndex =(number)をそれぞれの画像の別々の関数の中で変更する)。多くの機能の代わりに1つのファンクションを使用

function replaceContent9() { 
    document.getElementById("ecwid-productoption-8840317-Backgrounds") 
      .selectedIndex = 0 ; } 

私はこのような関数を呼び出す:

javascript:replaceContent9 

私はすべてのイメージのために使用されているだけの機能を持っているかもしれないので、私は配列でこれを行うだろうか。これまでのところ配列を計算することはあまりよくありません。たぶん誰かが正しい方向に私を指し示すか、試してみるべきコードを提案するかもしれません。

+1

のように、その関数を呼び出すことができます。あなたのHTMLと関数を呼び出す部分のように – PeeHaa

+0

[jQuery.each](http://api.jquery.com/jQuery.each/)または[for..each](https://developer.mozilla .org/ja/JavaScript/Reference/Statements/for_each ... in) – diEcho

答えて

1

私はハッシュ/検索対象と行きたい:

var replaceContent = (function() { 
    var info = { 
     0: 'ecwid-productoption-8840317-Backgrounds', 
     1: 'foobar-product', 
     9: 'whhooott rage' 
    }; 

    return function(which) { 
     document.getElementById(info[ which ]).selectedIndex = 0 ; 
    }; 
}()); 

現在の形でこのオブジェクトが原因でインデックス化キー名のjavascript配列のようなかなりのルックスが、より一般的な使用のためにあなたが行う必要がありますそれはこれが好きです。

今、あなたはちょうどあなたがいくつかのより多くの関連するコードを追加することはでき

replaceContent(9); 
+0

ありがとうございますが、おそらく私の質問で少し詳しく説明してください。この機能を使用して、ドロップダウンボックスの選択オプションを更新するには、個々の画像クリックごとにselectedIndex =(n)を変更する必要があります。 –

+0

ここにページがあります。背景ボタンを選択するだけです。上記のコードは最初の画像ボタンにあり、他のボタンは元の機能が自分の投稿に表示されています。 http://www.frysa.us/jackets.htm#ecwid:category=1206017&mode=product&product=8840317 –

+0

私はWYSIWYGエディター(XARA)を使用していたので、HTMLは非常にわかりにくいです。それはそれらのタイプのエディタで問題になります。私はページのプレースホルダに自分自身のコードを挿入することができました...そしてそれは上記の関数が置かれた場所です。ありがとう –

関連する問題