71 lines
2.6 KiB
PHP
71 lines
2.6 KiB
PHP
<script src="{{url("assets/admin/js/plugins/jquery-auto-complete/jquery.auto-complete.js")}}"></script>
|
|
<script>
|
|
$(function(){
|
|
var selectorClass = ".js-autocomplete";
|
|
|
|
|
|
$(selectorClass).autoComplete({
|
|
minChars: 1,
|
|
source: function (a, e, that) {
|
|
|
|
|
|
$.getJSON(that.attr("data-url"), {
|
|
pattern : that.attr("data-pattern")
|
|
} , function(json) {
|
|
a = a.toLowerCase();
|
|
var n = json,
|
|
r = [];
|
|
for (i = 0; i < n.length; i++) ~n[i].toLowerCase().indexOf(a) && r.push(n[i]);
|
|
e(r)
|
|
});
|
|
|
|
|
|
}
|
|
});
|
|
|
|
|
|
|
|
|
|
$(selectorClass).on("keypress", function(e) {
|
|
|
|
if(e.keyCode == 13) {
|
|
//alert("ok");
|
|
$(this).trigger("blur");
|
|
return false;
|
|
}
|
|
});
|
|
|
|
$(selectorClass).on("blur", function() {
|
|
var bu = $(this);
|
|
var url = "{{url("admin/detail/")}}" + "/" + bu.attr("data-table") + "/" + bu.attr("data-column");
|
|
var dataGroup = bu.attr("data-group");
|
|
var dataGroupParent = $("." + dataGroup);
|
|
|
|
var lineNumberAffected = JSON.parse(bu.attr("affected"));
|
|
|
|
$.getJSON(url,{
|
|
value : bu.val()
|
|
}, function(json) {
|
|
if(!$.isEmptyObject(json)) {
|
|
$.each(json, function(jsonIndex, jsonItem) {
|
|
dataGroupParent.find("." + jsonIndex).val(jsonItem).attr("readonly", "readonly");
|
|
|
|
});
|
|
|
|
$.each(lineNumberAffected, function(lineNumberAffectedIndex, lineNumberAffectedItem) {
|
|
var patternString = lineNumberAffectedItem;
|
|
$.each(json, function(jsonIndex, jsonItem) {
|
|
patternString = patternString.replace("{" + jsonIndex + "}", jsonItem);
|
|
});
|
|
|
|
dataGroupParent.find("." + lineNumberAffectedIndex).val(patternString).attr("readonly", "readonly");
|
|
});
|
|
}
|
|
|
|
|
|
|
|
});
|
|
});
|
|
|
|
});
|
|
</script> |