首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用选定的Jquery预填充php中的多个选择框

使用选定的Jquery预填充php中的多个选择框
EN

Stack Overflow用户
提问于 2014-02-26 16:31:39
回答 1查看 1.8K关注 0票数 0

我将这个脚本用于我的下拉列表http://harvesthq.github.io/chosen/

这是我的选择选项,它在以空白字段开始时工作得很好。

代码语言:javascript
复制
<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>

为了允许用户编辑它,我从数据库中预先填充了当前的信息,这在所有正常的输入字段上都很好,但是不能在多个选择中使用。

在这样的数组中,我有所有的值:

代码语言:javascript
复制
$site_array = ("Pokerstars","Full Tilt Poker", "Party Poker", "Ipoker");

但是,当表单被打印出来时,它只对第一个表进行选择,但是在我的调试器中,我可以清楚地看到数组中有完整的Tilt扑克等等,所以我不知道为什么它不能工作。我也尝试过使用selected=" selected“,但是我有一种感觉,选择的脚本正在覆盖这个脚本,因为查看所选的Jquery添加所选内容的方式是这样的:

代码语言:javascript
复制
<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>

我注意到,当一个值以这种格式添加时,它不会在选项值中更新所选的值,如果您手动添加它,它有时会覆盖它。因此,我想知道是否有一种通过选择的jquery传递给它的方法,哪些应该是预选的,或者也许还有另一个类似的jquery可以推荐这样做,我已经对文档进行了修改,但是我没有看到任何关于这个问题的具体内容,但这肯定是可能的。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-02-26 17:51:55

这是正确的,问题是在每个值之前都有一个看不见的空间。我刚刚添加了这行代码,并对其进行了更正,但它可能是如此孤立,这无助于人们自由地关闭

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

代码语言:javascript
复制
$string_result=array_map('trim',$string_result);
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22047443

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档