我希望使用jquery向我的代码中添加一个select标签,并且它的选项需要从laravel数组集合中获取值。
控制器
$array['skills'] = DB::table('skills')->get();
脚本
<script type="text/javascript"></script>
但在浏览器中,val.id和val.skill_name没有获取到值。
console.log(val.skill_name); 却能返回值。
我希望使用jquery向我的代码中添加一个select标签,并且它的选项需要从laravel数组集合中获取值。
控制器
$array['skills'] = DB::table('skills')->get();
脚本
<script type="text/javascript"></script>
但在浏览器中,val.id和val.skill_name没有获取到值。
console.log(val.skill_name); 却能返回值。
var array = [{
id: 2,
skill_name: 'abc'
}, {
id: 3,
skill_name: 'xyz'
}];
var options;
$.each( array, function( key, value ) {
console.log(value.skill_name);
options = options + '<option value="'+value.id+'">'+value.skill_name+'</option>';
});
var skillhtml = '<div><label for="name">Skill:</label><select name="skillname">'+options+'</select></div>';
$("#container").html(skillhtml);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js"></script>
<div id="container">
</div>
jsfiddle : https://jsfiddle.net/j5nkLabw/
如果您想要输出PHP数组,需要在此之前使用json_encode。
var array = {!!json_encode($array['skills'])!!};
或者更好的方式是在控制器中进行编码,
$jsonArray = json_encode($array['skills']);
然后在你的脚本中使用它:var array = {!! $jsonArray!!}