2009-12-07 2 views
1

내 응용 프로그램에서 Javascript를 사용하고 있습니다. 내 표에서, 나는 내가 내 양식을 만들기 위해 부하에 같이 노력하고 가치 지금자바 스크립트에서 선택한대로 드롭 다운 상자를 설정하십시오.

.. 실제로 업계 값이 다중 선택 드롭 다운 상자에서 삽입

id 69 
name :aruna  
username :aruna 
email :[email protected] 
password: bd09935e199eab3d48b306d181b4e3d1:i0ODTgVXbWyP1iFOV 
type : 3  
industry: | Insurance | Analytics | EIS and Process Engineering 

같이 포함 industry라는 이름의 열이 이 값을 포함하기로

산업이 드롭 다운 상자를이다

(산업 값을 유지하는 방법

<select id="ind1" moslabel="Industry" onClick="industryfn();"mosreq="0" multiple="multiple" size="3" class="inputbox" name="industry1[]">'+ 

    <option value="Banking and Financial Services">Banking and Financial Services</option> 

    <option value="Insurance">Insurance</option> 

    <option value="Telecom">Telecom</option> 

    <option value="Government ">Government </option> 

    <option value="Healthcare &amp; Life sciences">Healthcare & Life sciences</option> 

    <option value="Energy">Energy</option> 

    <option value="Retail &amp;Consumer products">Retail &Consumer products</option> 

    <option value="Energy, resources &amp; utilities">Energy, resources & utilities</option> 

    <option value="Travel and Hospitality">Travel and Hospitality</option> 

    <option value="Manufacturing">Manufacturing</option> 

    <option value="High Tech">High Tech</option> 

    <option value="Media and Information Services">Media and Information Services</option> 
</select> 
| 보험 | 아날를 ytics | EIS 및 프로세스 엔지니어링)을 선택 했습니까?

편집 : Window.onDomReady (함수() { 사용자 -> GET ('산업'); $의의 = 폭발 ('|', $ str을) >

    var selectedFields = new Array(); 
        <?php for($i=1;$i<count($s);$i++){?> 

         selectedFields.push("<?php echo $s[$i];?>"); 
         <?php }?> 
         for(i=1;i<selectedFields.length;i++) 
        { 

           var select=selectedFields[i]; 
      for (var ii = 0; ii < document.getElementById('ind1').length; ii++) { 
        var value=document.getElementById('ind1').options[ii].value; 
      alert(value); 
      alert(select); 
                if(value==select) 
                { 

        document.getElementById('ind1').options[ii].selected=selected; 
                }//If 
           } //inner For 
        }//outer For 
     </script> 

?

답변

0

, 배열로 선택된 값을 폭발 foreach는 사이클을 .... 내가 경고 기능 위가 제대로 작동 노력했다. 그러나 만약 루프 didnt 한은 왜 그렇게 나를 도와 ..Please .. 제대로 를 작동 모두를 통해 실행 이온을 선택하고 그 값이 일치하면 그냥 selected = "selected"를 선택하십시오.

예 :

자바 스크립트/PHP :

<script type="text/javascript"> 
      Array.prototype.in_array = function(p_val) { 
       for(var i = 0, l = this.length; i < l; i++) { 
        if(this[i] == p_val) { 
         return true; 
        } 
       } 
       return false; 
      } 

      // Swap this for normal onDomReady if you don't use jQuery 
      $(document).ready(function() { 
<?php 
$selected_from_db = "Insurance|Analytics|EIS and Process Engineering|Telecom"; 
$selected = explode("|", $selected_from_db); 
?> 

     var selected_fields = new Array(); 

<?php 
foreach ($selected as $key => $value) { 
    ?> 
      selected_fields.push("<?php echo $value;?>"); 
<?php 
} 
?> 

     var ind_dropdown = document.getElementById("ind1"); 

     for (var i = 0; i < ind_dropdown.length; i++) 
     { 
      if (selected_fields.in_array(ind_dropdown.options[ i ].text)) { 
       ind_dropdown.options[ i ].setAttribute("selected", "selected"); 
      } 

      /*var select=selectedFields[i]; 
      for (var ii = 0; ii < document.getElementById('ind1').length; ii++) { 
        var value=document.getElementById('ind1').options[ii].value; 
      alert(value); 
      alert(select); 
                if(value==select) 
                { 

        document.getElementById('ind1').options[ii].selected=selected; 
                } 
           }*/ 
     } 

    }); 
     </script> 

HTML :

<body> 
     <select id="ind1" name="industry[]" multiple="multiple" size="5"> 
      <option value="Banking and Financial Services">Banking and Financial Services</option> 
      <option value="Insurance">Insurance</option> 
      <option value="Telecom">Telecom</option> 
      <option value="Government ">Government </option> 
      <option value="Healthcare &amp; Life sciences">Healthcare &amp; Life sciences</option> 
      <option value="Energy">Energy</option> 
      <option value="Retail &amp;Consumer products">Retail &amp; Consumer products</option> 
      <option value="Energy, resources &amp; utilities">Energy, resources &amp; utilities</option> 
      <option value="Travel and Hospitality">Travel and Hospitality</option> 
      <option value="Manufacturing">Manufacturing</option> 
      <option value="High Tech">High Tech</option> 
      <option value="Media and Information Services">Media and Information Services</option> 
     </select> 

    </body> 

내가 혼합 PHP와 자바 스크립트 코드의 상점을하지 않는 것이 좋습니다. 그것은 너무 지저분하고 유지하기가 어렵습니다. 서버 측 (PHP) 또는 클라이언트 측 (AJAX)에서이 데이터를 구문 분석 할 것을 권장합니다.

+0

내 편집을 참조하십시오 .. 내가 말한대로 했어 ..하지만 기능이 작동하지 않는 경우. y so ?? – useranon

+0

예를 들어 내 대답을 편집했습니다. –

관련 문제