我有什么基本上是一个无线电类型选择,但因为我希望它看起来更像一个选择网格,我选择改为输入类型按钮并在点击时触发一个功能,但我有一个问题。 ng-model不会将我单击的按钮的值绑定到控制器部分,我知道它可以正常工作作为单选按钮。
解决这个问题的最快方法是什么?我假设有一种比重新定义单选按钮的css更简单的方法...特别是因为除了将点击的值与变量本身链接之外,所有这些都已完成。
有问题的部分:
<div class="aquipartners" id="aquipartnersID">
<input ng-repeat="partner in partners" align="center" type = 'button' class = "aquipartnernamebutton" id='aqui{{partner.name.PT}}' value='{{partner.name.PT}}' ng-model='newaquisubmission.part' onclick ='partnerselect()'>
</input>
</div>
在JS方面:
function partnerselect(){
var scopepartnerbutton = $('#subtitleid').scope().newaquisubmission.part;
alert(scopepartnerbutton);
if(scopepartnerbutton !== ""){
//the stuff I want to do, I added the if as a safeguard while I program everything
}
};
答案 0 :(得分:1)
如@georgeawg所说,使用ng-click。确保你的控制器上有这个:
$scope.partnerselect = partnerselect
和partnerselect应该声明如下:
function partnerselect(value) {
if($scope.newaquisubmission.part){
$scope.newaquisubmission.part = value; //Assuming this is what you want to do..
}
}
在你看来:
<div class="aquipartners" id="aquipartnersID">
<input ng-repeat="partner in partners" align="center" type = 'button' class = "aquipartnernamebutton" id='aqui{{partner.name.PT}}' value='{{partner.name.PT}}' ng-click ="partnerselect(partner.name.PT)">
</input>
</div>
答案 1 :(得分:0)
我通过使用(click)
代替了onclick
解决了类似的问题