jquery this.bindings[0].Val -工作,但他们的分支使用这一点



jquery: this.bindings[0]。瓦尔-工作,但他们的后果是使用这个?请参阅下面的代码示例。有没有更好的方法?

    $("#editAssignee,#assignee").autocomplete({
        source: GetPersonNamesSource,
        minLength: 4,           
       select: function (event, ui) {
       }
    GetPersonNamesSource = function (request, response) {
        //  var personName = $('#editAssignee').val();
        var personName = this.bindings[0].value;
        $.ajax({
            type: "GET",
            url: path + '/api/PersonCED/ByBEMSorName/'  + personName,
            data: personName,
            contentType: "application/json; charset=utf-8",
            dataType: "json",
            timeout: 99000,  // 8000= 8seconds, 99000 = 1 Min 39 seconds
            success: function (data) {
                response($.map($.parseJSON(data), function (item) {
                    var LastFirstM = item.LastName + ', ' + item.FirstName + ' ' + item.MiddleName;
                    return {
                        value: item.BEMSID,
                        label: LastFirstM
                        //objPerson: item
                    }
                }))
            } // end success
        }) // end .ajax
    }  // end function

source选项回调中访问自动完成小部件的值的正确方法是通过请求参数的term属性。

例如

:

var GetPersonNamesSource = function (request, response) {
  var personName = request.term;
  $.ajax({
    type: "GET",
    url: '/json',
    data: personName,
    contentType: "application/json; charset=utf-8",
    dataType: "json",
    timeout: 99000, // 8000= 8seconds, 99000 = 1 Min 39 seconds
    success: function (data) {
        response($.map($.parseJSON(data), function (item) {
            var LastFirstM = item.LastName + ', ' + item.FirstName + ' ' + item.MiddleName;
            return {
                value: item.BEMSID,
                label: LastFirstM
                //objPerson: item
            }
        }))
    } // end success
  }) // end .ajax
} // end function
$("#editAssignee").autocomplete({
  source: GetPersonNamesSource,
  minLength: 4,
  select: function (event, ui) {}
});

旁注:data选项的值如果不是字符串,则转换为查询字符串。它被附加到get请求的url中。因此,您可能不需要手动将其附加到url

相关内容

最新更新