Javascript ember cli如何从表单选择设置默认值?
我的模板:Javascript ember cli如何从表单选择设置默认值?,javascript,ember.js,Javascript,Ember.js,我的模板: <select name="lang" id="lang" onchange={{action "selectOption" value="target.value"}}> <option value="">--Choose--</option> {{#each model as |lang|}} <option value="{{lang.url}}">{{lang.title}}</option>
<select name="lang" id="lang" onchange={{action "selectOption" value="target.value"}}>
<option value="">--Choose--</option>
{{#each model as |lang|}}
<option value="{{lang.url}}">{{lang.title}}</option>
{{/each}}
</select>
如何将select的默认值设置为php?将
true
设置为所选选项的selected
属性。大概是这样的:
<option value="{{lang.url}}" selected={{eq lang.url lang}}>{{lang.title}}</option>
{{lang.title}
可以在这里找到。我想,控制器中的属性和每个块中的属性帮助器引用的上下文不同是问题所在。您需要将控制器中的属性更改为其他属性名称 application.js->route application.js->controller application.hbs->模板文件
--选择--
{{{#每个模型作为|项}
{{item.title}
{{/每个}}
{{outlet}}
工作样本
<option value="{{lang.url}}" selected={{eq lang.url lang}}>{{lang.title}}</option>
import Ember from 'ember';
export default Ember.Route.extend({
model(){
return [{'url':'phpurl','title':'phptitle'},{'url':'javascripturl','title':'javascripttitle'}];
}
});
import Ember from 'ember';
export default Ember.Controller.extend({
lang: 'phpurl',
actions: {
selectOption: function(option) {
console.log(option);
this.set("lang", option);
}
}
});
<select name="lang" id="lang" onchange={{action "selectOption" value="target.value"}}>
<option value="">--Choose--</option>
{{#each model as |item|}}
<option value="{{item.url}}" selected={{eq item.url lang}}>{{item.title}}</option>
{{/each}}
</select>
{{outlet}}