使用所选Jquery从php预填充多个选择框

使用所选Jquery从php预填充多个选择框,php,select,jquery-chosen,Php,Select,Jquery Chosen,我在下拉列表中使用此脚本 这是我的select选项,当从空白字段开始时效果很好 <form> <select class="chosen-select" multiple="multiple" id="fm-site[]" name="fm-site[]" style="width:250px" value="<?php echo $user_site;?>"> <option value="Pokers

我在下拉列表中使用此脚本

这是我的select选项,当从空白字段开始时效果很好

<form>
    <select class="chosen-select" multiple="multiple" id="fm-site[]" name="fm-site[]" style="width:250px" value="<?php echo $user_site;?>">
                    <option value="Pokerstars" <?php if(in_array("Pokerstars",$site_array)){echo 'selected';}?>>Pokerstars</option>
                    <option value="Full Tilt Poker" <?php if(in_array("Full Tilt Poker",$site_array)){echo 'selected';}?>>Full Tilt Poker</option>
                    <option value="Party Poker" <?php if(in_array("Party Poker",$site_array)){echo 'selected';}?>>Party Poker</option>
                    <option value="Ipoker" <?php if(in_array("Ipoker",$site_array)){echo 'selected';}?>>Ipoker Network</option>
                    <option value="Merge" <?php if(in_array("Merge",$site_array)){echo 'selected';}?>>Merge</option>
                    <option value="Winners Poker Network" <?php if(in_array("Winners Poker Network",$site_array)){echo 'selected';}?>>Winners Poker Network</option>
                    <option value="Microgaming" <?php if(in_array("Microgaming",$site_array)){echo 'selected';}?>>Microgaming</option>
                    <option value="Ongame" <?php if(in_array("Ongame",$site_array)){echo 'selected';}?>>Ongame</option>
                    <option value="Pacific" <?php if(in_array("Pacific",$site_array)){echo 'selected';}?>>Pacific</option>
                    <option value="Boss" <?php if(in_array("Boss",$site_array)){echo 'selected';}?>>Boss Poker</option>
                    <option value="PKR" <?php if(in_array("PKR",$site_array)){echo 'selected';}?>>PKR Network</option>
                    <option value="Winning Poker" <?php if(in_array("Winning Poker",$site_array)){echo 'selected';}?>>Winning Poker Network</option>
                    <option value="Revolution/Cake" <?php if(in_array("Revolution/Cake",$site_array)){echo 'selected';}?>>Revolution/Cake</option>
                    <option value="Winimax" <?php if(in_array("Winimax",$site_array)){echo 'selected';}?>>Winimax</option>
                </select>
</form>
但是,当表单打印出来时,它只在第一个表单上执行所选操作,但在我的调试器中,我可以清楚地看到数组具有全倾斜扑克等,因此我不确定它为什么不起作用。我还尝试了selected=“selected”,但我感觉所选脚本正在覆盖它,因为查看html时,所选Jquery添加所选内容的方式如下:

$site_array = ("Pokerstars","Full Tilt Poker", "Party Poker", "Ipoker");
<div id="fm_site___chosen" title="" style="width: 250px;" class="chosen-container chosen-container-multi">
    <ul class="chosen-choices">
        <li class="search-choice">
            <span>Pokerstars</span>
            <a data-option-array-index="0" class="search-choice-close"></a>
        </li>
        <li class="search-choice">
             <span>Full Tilt Poker</span>
             <a data-option-array-index="1" class="search-choice-close"></a>
       </li>
       <li class="search-field">
           <input value="Select Some Options" class="" autocomplete="off" style="width: 25px;" type="text">
       </li>
   </ul>

   <div class="chosen-drop">
   <ul class="chosen-results">
       <li data-option-array-index="0" style="" class="result-selected">
           Pokerstars
       </li>
       <li data-option-array-index="1" style="" class="">
           Full Tilt Poker
       </li>
       <li data-option-array-index="2" style="" class="active-result">
           Party Poker
       </li>
       <li data-option-array-index="3" style="" class="active-result">
           Ipoker Network
       </li>
       <li data-option-array-index="4" style="" class="active-result">
           Merge
       </li>
       <li data-option-array-index="5" style="" class="active-result">
           Winners Poker Network
       </li>
       <li data-option-array-index="6" style="" class="active-result">
           Microgaming
       </li>
   </ul>
   </div>
</div>

  • 扑克之星
  • 全速扑克
    扑克之星 全速扑克 欢聚扑克 Ipoker网络 合并 赢家扑克网络 乐天堂

我注意到,当一个值以这种格式添加时,它不会更新选项值中的选定值,如果手动添加它,它有时会覆盖它。因此,我想知道是否有一种方法可以通过selected jquery传递它,哪些应该被预先选择,或者可能有人可以推荐另一种类似的jquery来实现这一点,我已经红色了文档,但我没有看到任何与此相关的特定内容,但肯定是可能的?

这被证明是正确的,问题是在每个值之前都有一个不可见的空格。我刚刚添加了这行代码,它纠正了它,但它可能太孤立了,这不会帮助人们如此自由地关闭它

我将其添加到将字符串转换为数组的函数中

$string_result=array_map('trim',$string_result);