【发布时间】:2023-03-27 13:55:01
【问题描述】:
我在控制器中这样做
$actions = array('' => 'Select Action Name') + Action::lists('name' , 'id');
然后我将 $actions 数组发送到视图。
在 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 的那个,但它是最后一个选项。
【问题讨论】:
-
或者您可能会以这种方式获得您的价值观。
-
我不知道为什么会这样,但你总是可以使用
reverse()这样的函数来反转你的数组var reversedAction= action.reverse() -
使用array_unshift 而不是
+。 -
@Ben 请问具体在哪里?我有太多
+s :) -
@AnastasieLaurent on
$actions = array('' => 'Select Action Name') + Action::lists('name' , 'id');,array_unshift将元素添加到数组中。
标签: javascript php jquery laravel laravel-4