观点:
<select name="id" id="drop">
@for(pag <- page){
@if(pag.tenant_location_id == loc.id){
<option value="@pag.id">@pag.pagename</option>
}
}
</select>
<a href="@routes.Project.edit(drop down selected value)>Edit</a>
我尝试使用javascript var x = document.getElementById('drop')它不接受javascript变量值。 谢谢您的帮助。
答案 0 :(得分:0)
您不能将JavaScript值(在客户端声明)作为Scala参数(在运行时编译)传递,您要传递给Scala函数的所有参数必须在视图中声明并获取一些值即。来自控制者或对象。
解决方案:在选项的值中构建整个网址,因此使用基本JavaScript,您只需替换href
事件上的onchange
即可。示例(未经过测试,但应与jQuery一起使用)
<select name="id" id="drop">
<option value="">Choose the service...</option>
@for(pag <- page){
@if(pag.tenant_location_id == loc.id){
<option value="@routes.Project.edit(pag.id)">@pag.pagename</option>
}
}
</select>
<a href="#" id="editBtn">Edit</a>
<script>
$(document).on('change', '#drop', function(){
$('#editBtn').attr('href', $(this).val());
});
</script>