当我单击并展开该行时,我添加了输入字段,当我尝试向字段中输入任何值时,该行会折叠。
下面是我的代码:
null
new Vue({
el: '#app',
data () {
return {
headers: [
{
text: 'Dessert (100g serving)',
align: 'left',
sortable: false,
value: 'name'
},
{ text: 'Calories', value: 'calories' },
{ text: 'Fat (g)', value: 'fat' },
{ text: 'Carbs (g)', value: 'carbs' },
{ text: 'Protein (g)', value: 'protein' },
{ text: 'Sodium (mg)', value: 'sodium' },
{ text: 'Calcium (%)', value: 'calcium' },
{ text: 'Iron (%)', value: 'iron' }
],
items: [
{value: false, name: 'Frozen Yogurt', calories: 159, fat: 6.0, carbs: 24, protein: 4.0, sodium: 87, calcium: '14%', iron: '1%'},
{value: false, name: 'Ice cream sandwich', calories: 237, fat: 9.0, carbs: 37, protein: 4.3, sodium: 129, calcium: '8%', iron: '1%'}
]
}
}
})
<link rel="stylesheet" href="https://unpkg.com/vuetify@0.17.7/dist/vuetify.min.css">
<link href='https://fonts.googleapis.com/css?family=Roboto:300,400,500,700|Material+Icons' rel="stylesheet" type="text/css">
<script src="https://unpkg.com/vue/dist/vue.js"></script>
<script src="https://unpkg.com/vuetify@0.17.7/dist/vuetify.min.js"></script>
<div id="app">
<v-app id="inspire">
<v-data-table
:headers="headers"
:items="items"
hide-actions
item-key="name"
>
<template slot="items" slot-scope="props">
<tr @click="props.expanded = !props.expanded">
<td>{{ props.item.name }}</td>
<td class="text-xs-right">{{ props.item.calories }}</td>
<td class="text-xs-right">{{ props.item.fat }}</td>
<td class="text-xs-right">{{ props.item.carbs }}</td>
<td class="text-xs-right">{{ props.item.protein }}</td>
<td class="text-xs-right">{{ props.item.sodium }}</td>
<td class="text-xs-right">{{ props.item.calcium }}</td>
<td class="text-xs-right">{{ props.item.iron }}</td>
</tr>
</template>
<template slot="expand" slot-scope="props">
<v-card flat>
<v-card flat="flat" color="grey lighten-4">
<v-container fluid="fluid" grid-list-xl="grid-list-xl">
<v-layout row="row" wrap="wrap">
<v-flex sm3="sm3">
<v-text-field label="Calories" v-model="props.item.name"></v-text-field>
</v-flex>
<v-flex sm3="sm3">
<v-text-field label="Calories" v-model="props.item.calories"></v-text-field>
</v-flex>
</v-layout>
</v-container>
</v-card>
</v-card>
</template>
</v-data-table>
</v-app>
</div>
null
这里是链接到我的代码,与上面的代码相同。https://codepen.io/syed-haroon/pen/vdgexx
对于我的问题,这个问题有点怪&问题是由item-key
引起的,下面是我做的:
// Changing from:
<v-data-table :headers="headers" :items="items" item-key="name">
// Changed to:
<v-data-table :headers="headers" :items="items" item-key="dummyIndexFixForCollapseIssue">
// in `data` using generated random value for
data () {
return {
items: [
{dummyIndexFixForCollapseIssue: this.generateRandomNumber(), name: 'Frozen Yogurt', calories: 159},
{dummyIndexFixForCollapseIssue: this.generateRandomNumber(), name: 'Ice cream sandwich', calories: 237}
]
}
}
// here is the `method` to generating random value
methods: {
generateRandomNumber () {
return Number(Math.floor(Math.random() * 90000) + 10000)
}
}
在Vuetify中可扩展表的基本代码笔中,我注意到当表中两个条目的名称相同时,单击row to expand也会扩展具有相同名称条目的另一行。有没有办法避免这种情况? 以下是重新创建的问题:https://codepen.io/entropy283/pen/eyjdmlp?editable=true&editors=101%3dhttps%3a%2f%2fvuetifyjs.com%2fen%2f
下面是一个示例,其中只发生扩展,但我希望行折叠时,您单击它。 https://stackblitz.com/edit/Angular-Material-expandable-table-rows?file=app%2ftable%2ftable.component.ts 我希望我的桌子是这样的: 请帮帮忙。
我创建了一个带有可扩展行的垫子表,就像Angular 8: https://stackblitz.com/angular/pmagobelkkg?file=app%2ftable-expandable-rows-example.ts 但是,与上面的示例一样,只有当我单击该行内的某个位置时,该行才会展开。有没有办法把上下箭头图标加到每一行,这样只有当我点击每一行的图标时,一行才会展开? 非常感谢!
问题内容: 我尝试使用以下条件创建折叠并展开侧面菜单- 页面加载时,第一项(圆形)将处于展开视图中。一个项目可以一次扩展,例如,如果用户单击第二个项目(“规范”),则第一个项目将折叠。我还希望在收起/展开交易过程中使用一些CSS动画,例如平稳地向下/向上调整每个项目的主体部分并更改箭头图标。我的方法是动态地在每个项目()上添加/删除CSS类,例如- 因此,当一个项目处于展开视图时,它应类似于上一类
问题内容: 我已经成功创建了一个函数来切换我的各个行以使用以下方式打开和关闭: 和 有关更多代码,请参见plunkr。请注意,“菜单”中的展开/折叠按钮。 但是,我现在想不出一种方法来打开和关闭所有行。我希望能够以某种方式在行上运行for循环,然后在需要时调用toggle,但是我这样做的尝试失败了。在下面看到它们: 关于如何正确切换所有行的任何想法? 问题答案: 将该指令与和指令结合使用,我们可以
我正在使用复选框字段在WooCommerce应答代码中添加/删除自定义费用,该代码在我的店铺中运行良好,以设置折扣(负费用)。 但我想使用输入字段设置费用金额。我的目标是通过num/text输入字段中输入的值来减少购买总量。我不想使用复选框,我想使用输入或数字来确定费用金额。 可能吗?我该怎么做?