我使用一些输入字段来过滤结果列表,这个:
Db::table('manual_jobs')->where('id', $manual->id)->update(['path' => $manual->fileupload->getPath()]);
效果很好,但提交表单后,我想用过滤器填充输入,我已经应用了。其他所有投入都可以:
例如:
$("#idCustomer").select2({
allowClear: true,
placeholder: "Filter",
ajax: {
url: 'ajax/search_customers.php',
dataType: 'json',
type: "GET",
processResults: function (data) {
return {
results: $.map(data, function (item) {
return {
text: item.Name,
id: item.ID
}
})
};
}
}
});
我的page.php
<input id="minRange" name="minRange" value="<?php echo $minRange; ?>">
但我不知道如何使用我使用的搜索自动填充Select2。例如,如果我写“DEM”我的Select2建议我“DEMO CUSTOMER”(ID = 4)。我选择此项,提交表单,重新加载页面后,Select2 if ( isset($_POST) ) {
$minRange = $_POST['minRange'];
$idCustomer = $_POST['idCustomer'];
...
}
仍为空。
我想使用传递给搜索表单的id = 4来对它进行初始化。
我试图追加idCustomer
但它不起作用。
我正在使用最新的4.1版插件
答案 0 :(得分:0)
你必须提及select for autocomplete
// HTML
// JS
$("#idCustomer").select2({
allowClear: true,
placeholder: "Filter",
ajax: {
url: 'ajax/search_customers.php',
dataType: 'json',
type: "GET",
processResults: function (data) {
return {
results: $.map(data, function (item) {
return {
text: item.Name,
id: item.ID
}
})
};
}
},
minLength: 2,
select: function(event, ui) {
var Name = ui.item.Name;
$("#minRange").val(Name);
}
})
答案 1 :(得分:0)
解决:
<select id="idCustomer" name="idCustomer" class="form-control">
<?php if ( $idCustomer != "" ) { ?><option value="<?php echo $idCustomer; ?>"><?php echo get_info_by_id($idCustomer)['Name']; ?></option><?php } ?>
</select>
Select2完成其余的工作!