我在 Controller 中执行此操作
$actions = array('' => 'Select Action Name') + Action::lists('name' , 'id');
然后我将 $actions 数组发送到 View 。
在 Javascript 中:
<script>
var actions = {{json_encode($actions) }};
/*for (var key in actions){
console.log(key, actions[key]);
}*/
var options = "";
for(var key in actions){
options = options+ ('<option value="'+key+'">'+actions[key]+"</option>");
}
var select = '<select name="action_id">' + options + "</select>";
console.log(select);
</script>
打印 select
结果:
<select name="action_id">
<option value="1">Remove White Space</option>
<option value="2">extract map latitude</option>
<option value="3">Extract map longitude</option>
<option value="">Select Action Name</option>
</select>
数组是向后的,因为第一个选项应该是带有 Select Action Name
的选项,但它是最后一个选项。
最佳答案
你需要给你的数组元素一个 0 的索引:
$actions = array(0 => 'Select Action Name');
关于javascript - 由 laravel 发送的数组在我从 javascript 使用它时变得向后,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24872060/