我的上述问题的另一种解决方法是如下:
,但我不知道这是正确的/标准方式或不..但对我来说:)做工精细
这里是我的看法:typeheadbasic扩展
$clientData = $my_dynamic_data_arr; // this arr var i used in jquery script for chekcing if name is exists or not
echo TypeaheadBasic::widget([
'model' => $model,
'attribute' => 'client',
'data' => $clientData,
'options' => ['placeholder' => 'Filter as you type ...', 'id' => 'client_profile'],
'pluginOptions' => ['highlight' => true],
]);
这里是我的jQuery脚本来处理上述问题
var client_arr = $.makeArray(<?php echo json_encode(array_values($clientData)); ?>); // $clientData is php array variable from above
$("#clientProfileForm").submit(function(event) {
var client_name = $("#client_profile").val();
if ($.inArray(client_name, client_arr) === -1) {
$("#clientProfileError").html("<spna style='color:red'>Client not exists</span>");
return false;
}
if ($('#client_profile').val() === '') {
event.preventDefault();
$("#clientProfileError").html("<spna style='color:red'>Client name is required</span>");
}
});
争夺w“选择Repository”部分.http://demos.krajee.com/widget-details/typeahead。 – yafater