javascript - foreach 将数据添加到 selectpicker
问题描述
我希望能够selectpicker
使用选项来完成此操作,但这不会使用该 js 函数添加选项。我尝试上课 select
,效果很好,但selectpicker
确实有效。
HTML
<select class="selectpicker form-control" data-style="btn-default"
data-placeholder=".:: Dirección ::." tabindex="-1"
data-minimum-results-for-search="10" id="address" name="address">
</select>
JS
$.each(response.result['address1'], function(k, v) {
$('<option>').val(v.c_bpartner_location_id).text(v.address1).appendTo('#address');
});
PHP
$address1[] = array();
foreach($records as $row) {
$direccion = $row - > direccion;
array_push($address1, array("address1" => $row -> address1,
"c_bpartner_location_id" => $row -> c_bpartner_location_id))
}
$data['result'] = array(
'direccion' => $direccion,
'address1' => $address1);
可能是什么错误?
解决方案
该$.each
函数的回调有两个参数:键和值或数组和值中的索引。
在您的情况下,我假设您有 indireccion
和address1
标量类型的值。对于您的示例,假设我们有一个这样的对象:
$data = [
'result' => [
'direccion' => 'left',
'address1' => 'Street 1, City',
]
];
因此,对于您的 JS 代码,您应该使用以下代码:
$.each(response.result['address1'], function(k, v) {
$('<option>').val(v).text(v).appendTo('#address');
});
因为对于关联数组的每个部分,$data['result']
您将获得键值对(k,v):
k: direccion, v: left
k: address1, v: Street 1, City
推荐阅读
- python - Python-Nmap 按列表扫描端口
- javascript - 如何获取使用 onmouseover 在循环中创建的 div 的 ID
- html - Bootstrap 4 - 如何在 modal.backdrop 中删除或编辑不透明度
- python - 有没有办法自动关闭 spark/jupyter 会话
- git - VS Code 中的 Git 提交,没有任何消息
- csv - perl如何去掉逗号
- c# - IL Generate Proxy to User Define Func
- css - pac-container 反应自动完成 - 我如何引用 CSS
- javascript - Node js 中的条件承诺
- c++ - 从鼠标位置数学设置 Actor 世界位置