使用PHP

时间:2017-02-10 08:41:07

标签: javascript php select2

我想为select2表单插入函数select2TemplateResult作为属性'templateResult'。我不明白如何将属性'templateResult'设置为自定义函数,我在之前调用的.js文件中定义,而不是创建select2组件。

lib.js

function select2TemplateResult(data, container) {
    console.log('aaa');
    if (data.element) {
        $(container).addClass($(data.element).attr("status"));
        console.log($(data.element).attr("status"));
    }
    return data.text;
}

form.php的

<script type="text/javascript" src="/plugins/jQuery/jquery-2.2.3.min.js"></script>
<script type="text/javascript" src="lib.js"></script>

<div class="form-group {{ $errors->has('elements') ? 'has-error' : '' }}">
    <label>Example</label>
    <select name="elements[]" class="form-control select2" multiple="multiple" templateResult=select2TemplateResult() data-placeholder="Select an element" style="width: 100%;">
        <?php
        $key_name = "name";
        $key_status = "status";
        foreach ($elementSource->getElements() as $v){
            echo "<option selected='selected' status=$v[$key_status]>$v[$key_name]</option>";
        }
        ?>
    </select>
</div>

php代码位于laravel .blade.php文件中,我需要在select2丸子中添加一个类(选择和选项,但为了简单起见,我们只是处理templateResult函数)使用.css文件修改其外观。我知道通过使用javascript创建select2元素这很容易,但我想继续用php代码创建select2表单,如果可能的话,为了保持代码干净,也因为我不需要总是templateResult函数(我的页面中还有很多其他情况)。

此代码中可能存在许多错误...请给我一些提示! 感谢

0 个答案:

没有答案