javascript - 在 laravel Blade 中使用 refs 来预先检查复选框

标签 javascript laravel vue.js

我正在尝试使用 refs 从我的 laravel Blade 中获取数据,在 foreach 循环的每一行中,并且预检查复选框的值与复选框匹配。在这个例子中,如果循环中的一行有 $result->site内部和 $result->category目录,我希望检查该行上的内部和目录复选框。

我使用 refs 是因为我必须对行中的其他数据执行类似的操作,但我不确切知道如何将其应用于将 Blade 值与复选框的 id 或值匹配并使其选中。

我在这里想念什么?

@foreach($getResults as $k => $result)

    //$result->site and $result->category hold the value I need to match in order to pre-select a checkbox

    <div slot="site" >
        <input category="checkbox" id='direct' value='direct'   ref="existingsiteNames" data-md-icheck  />
        <label>Direct</label><br>
        <input category="checkbox" id='intra' value='intra'  ref="existingsiteNames" data-md-icheck  />
        <label>Intra</label><br>
    </div>

    <div slot="category" >
        <input category="checkbox" id='marketing' value='marketing' ref="existingcategoryNames" data-md-icheck  />
        <label>Marketing</label><br>
        <input category="checkbox" id='catalog' value='catalog' ref="existingcategoryNames" data-md-icheck  />
        <label>Catalog</label><br>
    </div>

    <div slot="footer">
      <button class="modal-save-button" @click="updateHandler">
        Save
      </button>
    </div>
@endforeach

new Vue({
    el:'#app',
    data: { 
        showGroupModal: false,
        showAddModal: false,
        existingcategoryNames: [],
        existingsiteNames: [],
    },
    methods: {
        updateHandler(event) {
            this.showGroupModal = false;
            this.updateGroupDetails(event);
        },
        updateGroupDetails: function(event){

            let data = {
                site: this.$refs.existingsiteNames,
                category: this.$refs.existingcategoryNames,
            };

            axios.post('/update', data)
            .then((response) => {
            })
            .catch(function (error) {
            })
            .finally(function () {
            });
        },
    }
})

最佳答案

如果我正确理解您的问题,您想根据条件检查复选框。
这是一个取自我自己代码的示例:

<input {{ $something->isAwesome ?: "checked" }} type="checkbox" >

在这个例子中,我们检查 $something 是否很棒,如果是,我们打印字符串“checked”,使复选框被选中。
如果这不是您想要完成的,请告诉我,我会更新答案。

关于javascript - 在 laravel Blade 中使用 refs 来预先检查复选框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58886870/

相关文章:

javascript - 如何在 VueJS 中连接数据属性

javascript - 如何使用 Vue.js 显示和隐藏 Bootstrap 微调器?

内部与外部构造函数的 JavaScript 类属性

php - 从相关模型 laravel 获取 id

php - 在后台运行异步作业 (laravel)

javascript - 如何从一堆计算值中逐个分配 Vue 对象的属性?

javascript - 在 JavaScript 中循环遍历 json 数据

javascript - RxJS:使用 `switchMap` 运算符时处理取消的事件

php - Laravel MorphToMany 不适用于多列