the HTML specs do not require browsers preserve the special attributes such as multiple.(The presense of them means true and absense means false) This prevents the angular compiler from correctly retrieving the binding expression. To solve this problem, we introduce ng:multiple.
<ANY ng:multiple="template"> ... </ANY>
template – {template} –
any string which can contain '{{}}' markup.
Check me check multiple: <input type="checkbox" name="checked"><br/> <select id="select" ng:multiple="{{checked}}"> <option>Misko</option> <option>Igor</option> <option>Vojita</option> <option>Di</option> </select>
it('should toggle multiple', function() { expect(element('.doc-example-live #select').attr('multiple')).toBeFalsy(); input('checked').check(); expect(element('.doc-example-live #select').attr('multiple')).toBeTruthy(); });