我在基于VueJS的项目中有以下引导按钮组...
<div class="btn-group btn-group-xs pull-right" data-toggle="buttons">
<label class="btn btn-primary label-primary">
<input type="radio" name="options" id="option1" autocomplete="off" v-on:click="clearEntries"> A
</label>
<label class="btn btn-primary label-primary">
<input type="radio" name="options" id="option2" autocomplete="off" v-on:click="clearEntries"> B
</label>
<label class="btn btn-primary active label-primary">
<input type="radio" name="options" id="option3" autocomplete="off" checked v-on:click="clearEntries"> C
</label>
<label class="btn btn-primary label-primary">
<input type="radio" name="options" id="option4" autocomplete="off" v-on:click="clearEntries"> D
</label>
</div>
&#13;
我想要做的就是在选择/选中其中一个单选按钮时调用方法。
但是click事件永远不会被触发。我不确定它是否被bootstrap css压制。
有什么想法吗?
答案 0 :(得分:5)
将v-on:click="clearEntries"
放在标签上,而不是输入。
new Vue({
el: "#app",
methods: {
clearEntries: function() {
alert('clearEntries !');
}
}
});
&#13;
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" integrity="sha384-BVYiiSIFeK1dGmJRAkycuHAHRg32OmUcww7on3RYdg4Va+PmSTsz/K68vbdEjh4u" crossorigin="anonymous">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/vue/2.2.5/vue.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js" integrity="sha384-Tc5IQib027qvyjSMfHjOMaLkfuWVxZxUPnCJA7l2mCWNIpG9mGCD8wGNIcPD7Txa" crossorigin="anonymous"></script>
<div id="app">
<div class="btn-group btn-group-xs pull-right" data-toggle="buttons">
<label v-on:click="clearEntries" class="btn btn-primary label-primary">
<input type="radio" name="options" id="option1" autocomplete="off"> A
</label>
<label v-on:click="clearEntries" class="btn btn-primary label-primary">
<input type="radio" name="options" id="option2" autocomplete="off"> B
</label>
<label v-on:click="clearEntries" class="btn btn-primary active label-primary">
<input type="radio" name="options" id="option3" autocomplete="off" checked> C
</label>
<label v-on:click="clearEntries" class="btn btn-primary label-primary">
<input type="radio" name="options" id="option4" autocomplete="off"> D
</label>
</div>
</div>
&#13;