2011-01-14 9 views
0

私はjQueryとcoldfusionを使用しています。ボタンをクリックしてすべての選択リストをクラス名で更新します。

シナリオ: 私は車のデータベースと各車両の位置を更新するためのフォームを持っています。同じ場所に行く車両が10台あるとしましょう。ドロップダウンアイテムから場所を選択し、別のボタンをクリックしてその選択した値を他の9台の車両にコピーできるようにしたいと思います。

メインフォームでは動作しませんでしたので、いくつか試してみるために以下のコードを作成しました。クリックしたボタンに対応するselectから一意のIDと値を取得することはできますが、他のselectリストの値を書き込まれた値に変更することはできません。誰も助けることができますか?

<form> 
    <select name="thisone" class="replicated" id="SystemType_10"> 
     <cfoutput> 
      <cfloop index="x" from="1" to="10"> 
       <option value="Item #x#">Item #x#</option> 
      </cfloop> 
     </cfoutput> 
    </select><img src="../iPhone/assets/images/whiteButton.png" width="29" height="46" border="0" align="absmiddle" class="vtip replicate" id="replicate_10" title="Copy this value down the list."> 
    <br> 
    <select name="thistwo" class="replicated" id="SystemType_500"> 
     <cfoutput> 
      <cfloop index="y" from="1" to="10"> 
       <option value="Item #y#">Item #y#</option> 
      </cfloop> 
     </cfoutput> 
    </select> <img src="../iPhone/assets/images/whiteButton.png" width="29" height="46" border="0" align="absmiddle" class="vtip replicate" id="replicate_500" title="Copy this value down the list." /> 
    <br> 
    <select name="thisthree" class="replicated" id="SystemType_84"> 
     <cfoutput> 
      <cfloop index="z" from="1" to="10"> 
       <option value="Item #z#">Item #z#</option> 
      </cfloop> 
     </cfoutput> 
    </select> <img src="../iPhone/assets/images/whiteButton.png" width="29" height="46" border="0" align="absmiddle" class="vtip replicate" id="replicate_84" title="Copy this value down the list." /> 
</form> 

jQuery(document).ready(function() { //start of jQuery 
    $('.replicate').click(function() { 
     var CopybtnClicked = $(this).attr("id").split(""); // figure out which copy button was clicked and then get the ID number from it 
     var sysID = CopybtnClicked[1]; // the value from using split are put into arrays starting with 0,1,2,3,etc. In this case 
     // the value we need is the second so that is the ID we are looking for; 
     var OriginalValue = $('#SystemType' + sysID).val(); // define the variable and then get the value from it; 
     alert(OriginalValue); 
     $("select option:contains('SystemType_')").val(OriginalValue); 
     alert('done ' + OriginalValue); 
    }); 
}) //end of jQuery 
+0

は、あなたのレンダリングされたHTMLを示すことができました、ColdFusionソースではなく、 – lonesomeday

+1

ページ上に車種ごとに10個の選択項目があることを正しく理解していますか?彼らはすべて同じ場所から生まれていますか?もしそうなら、Xの位置を持つデータベース内のすべての車両に位置変更を適用する方が簡単かもしれません。私はあなたが何をしようとしているかを見ていますが、私は100%確実ではありません。 – Ofeargall

答えて

0

あなただけのページ上の他の選択ボックスを見つけることsysIDとCSSセレクタの構文を取得して、エラーを修正するために必要な、接近していました。

jQueryの(私の変更は使用してコメントアウトラインをたどる/ *コード* /)

jQuery(document).ready(function() { //start of jQuery 
    $('.replicate').click(function() { 
     /* var CopybtnClicked = $(this).attr("id").split(""); */ 
     var CopybtnClicked = $(this).attr("id").split("_"); // figure out which copy button was clicked and then get the ID number from it 
     var sysID = CopybtnClicked[1]; // the value from using split are put into arrays starting with 0,1,2,3,etc. In this case 
     // the value we need is the second so that is the ID we are looking for; 
     var OriginalValue = $('##SystemType_' + sysID).val(); // define the variable and then get the value from it; 
     alert(OriginalValue); 
     /*$("select option:contains('SystemType_')").val(OriginalValue);*/ 
     $("select[id^='SystemType_']").val(OriginalValue); 
     alert('done ' + OriginalValue); 
    }); 
}) //end of jQuery 

(それを要求したコメント投稿用)HTML

<form> 
    <select name="thisone" class="replicated" id="SystemType_10"> 
     <option value="Item 1">Item 1</option> 
     <option value="Item 2">Item 2</option> 
     <option value="Item 3">Item 3</option> 
     <option value="Item 4">Item 4</option> 
     <option value="Item 5">Item 5</option> 
     <option value="Item 6">Item 6</option> 
     <option value="Item 7">Item 7</option> 
     <option value="Item 8">Item 8</option> 
     <option value="Item 9">Item 9</option> 
     <option value="Item 10">Item 10</option> 
    </select><img src="../iPhone/assets/images/whiteButton.png" width="29" height="46" border="0" align="absmiddle" class="vtip replicate" id="replicate_10" title="Copy this value down the list."> 
    <br> 
    <select name="thistwo" class="replicated" id="SystemType_500">  
     <option value="Item 1">Item 1</option> 
     <option value="Item 2">Item 2</option> 
     <option value="Item 3">Item 3</option> 
     <option value="Item 4">Item 4</option> 
     <option value="Item 5">Item 5</option> 
     <option value="Item 6">Item 6</option> 
     <option value="Item 7">Item 7</option> 
     <option value="Item 8">Item 8</option> 
     <option value="Item 9">Item 9</option> 
     <option value="Item 10">Item 10</option> 
    </select> <img src="../iPhone/assets/images/whiteButton.png" width="29" height="46" border="0" align="absmiddle" class="vtip replicate" id="replicate_500" title="Copy this value down the list." /> 
    <br> 
    <select name="thisthree" class="replicated" id="SystemType_84"><   
     <option value="Item 1">Item 1</option> 
     <option value="Item 2">Item 2</option> 
     <option value="Item 3">Item 3</option> 
     <option value="Item 4">Item 4</option> 
     <option value="Item 5">Item 5</option> 
     <option value="Item 6">Item 6</option> 
     <option value="Item 7">Item 7</option> 
     <option value="Item 8">Item 8</option> 
     <option value="Item 9">Item 9</option> 
     <option value="Item 10">Item 10</option> 
    </select> <img src="../iPhone/assets/images/whiteButton.png" width="29" height="46" border="0" align="absmiddle" class="vtip replicate" id="replicate_84" title="Copy this value down the list." /> 
</form> 
関連する問題