Я хочу создать простой список, и когда пользователь нажимает кнопку, значение отображается в элементе span.Angularjs нажмите и отобразите из списка
HTML & Контроллер
<html xmlns:ng="http://angularjs.org">
<script src="http://code.angularjs.org/angular-0.9.19.js" ng:autobind></script>
<script type="text/javascript">
function MyController(){
this.list = [{name:"Beatles", songs: ["Yellow Submarine", "Helter Skelter", "Lucy in the Sky with Diamonds"]}, {name:"Rolling Stones", songs:["Ruby Tuesday", "Satisfaction", "Jumpin' Jack Flash"] }]
this.songs = [];
}
</script>
<body ng:controller="MyController">
<p>selected: <span ng:bind="selected" ng:init="selected='none'" /></p>
<ul>
<li ng:repeat="artist in list">
<button ng:click="selected = artist.name" >{{artist.name}}</button>
</li>
</ul>
<!--ol>
<li ng:repeat="song in songs">
{{song}}
</li>
</ol-->
</body>
Я хочу, чтобы динамически отобразить список песен щелкнули художника. Правильно ли это?
есть способ сделать это без создания метода в контроллере? – rascio
Да, вы можете, но это решение с контроллером - это ИМХО лучшее. Вот скрипка с двумя другими решениями http://jsfiddle.net/vojtajina/ugnkH/3/ – Vojta
ok ... как последняя вещь, чтобы увидеть, получу ли я ее. В моем файле он не работал, потому что я не объявлял свойство «selected» в моей модели и создавал его в рамках итерации. Хотя в третьем примере это работает, потому что, если он не находит свойство в «фактической» области, он ищет по родительским областям, прежде чем создавать его? – rascio