2012-09-26 9 views
31

現在、私は、これは一部のGoogleのスレッドで約語られていることを知っているが、私はまだ(clean'n簡単な方法で)モデルに私のラジオ入力をバインドする適切なソリューションを見つけることができない、Angularjsラジオボタン

とコントローラで:私は、HTMLを持って

$scope.searchByRma  = true; 
$scope.searchByDelivery = false; 

これは(それはチェックボックスと同じように)動作しません...

データバインディングを失うことなく最初のラジオボタンにデフォルト値を設定する方法に関するアイデアはありますか?

ありがとうございます!

答えて

63

2つのラジオボタンに異なる変数を使用して同じ変数を使用する必要があると思います。

<input ng-model="searchBy" value="Rma" type="radio" name="search-type"> 
<input ng-model="searchBy" value="Delivery" type="radio" name="search-type"> 

その後、あなたはsearchByセット「RMA」または ユーザの入力に応じて、「配達」のいずれかを持っている必要があります。

+1

は、私もそれを破ったラジオボタンのいずれかに設定されたNG-チェックしていたので、それが誰かのために役に立つかもしれません...感謝! – alchemication

+0

エレガントなソリューション! – zooblin

-1

モデル変数を{}に設定すると、ラジオボタンがデフォルト(選択されていない状態)にリセットされます。もちろん、これはtoshの答えと同じようにラジオボタンのタグが正しい場合にのみ機能します。あなたのケースでは

完璧だ
$scope.searchBy = { }; 
関連する問題