Функция json возвращает строковое значение, которое не отображается в текстовом поле при использовании события onchange в jquery в mvc - PullRequest
0 голосов
/ 02 октября 2018

Я хочу показать описание покупки.при вводе кода покупки событие пожара и вызов функции json возвращают описание функции json, и я хочу показать описание в текстовом поле Описание, но функция возвращает строковое значение, а значение не отображается в текстовом поле.Кто-нибудь может сказать, в чем проблема в моем коде.

json Функция

public JsonResult PurchaseCode(string glCode)
        {
            try
            {
                return Json(mPurchaseCode(glCode), JsonRequestBehavior.AllowGet);
            }
            catch (Exception)
            {

                throw;
            }
        }

        public string mPurchaseCode(string glCode)
        {
            try
            {
                con = new SqlConnection(constring);
                con.Open();
                cmd = new SqlCommand("select gl_desc from ChartofAcct where Comp_Id='" + 1 + "' and Gl_Code='" + glCode + "'", con);
                var varcmd = cmd.ExecuteScalar().ToString();

                con.Close();
                return varcmd;


            }
            catch (Exception)
            {

                throw;
            }

        }

Jquery

<script>

    $('#txtNPurCode').change(function () {
        var purchaseCode = $("#txtNPurCode").val();
        PurchaseCode(purchaseCode);

    });

    function PurchaseCode(purchaseCode) {

        $.ajax({
            url: "/Home/PurchaseCode",
            type: "GET",
            contentType: "application/json;charset=UTF-8",
            data: {
                'glCode': purchaseCode

            },
            dataType: "json",
            success: function (result) {
                $('#txtNPurCodeDescription').val(result.gl_desc);



            },
            error: function (errormessage) {
                alert(errormessage.responseText);
            }
        });
        return false;
    }

</script>

HTML

<div class="form-row">
                                <div class="col">
                                    <!-- Requisition Date -->
                                    <div class="md-form">

                                        @Html.TextBoxFor(m => m.PurCode, new { @class = "form-control mr-sm-3", @id = "txtNPurCode", @placeholder = "Purchase Code", Required = true })

                                        <label for="lblRequisitionDatepicker">Purchase Code</label>
                                    </div>
                                </div>
                                <div class="col">
                                    <!-- Job -->
                                    <div class="md-form">

                                        <input type="text" id="PurCodeDescription" class="form-control mr-sm-5" />
                                        <label for="lbljob">Description</label>
                                    </div>
                                </div>
                            </div>

Ответы [ 2 ]

0 голосов
/ 02 октября 2018

Попробуйте это:

  $.ajax({
        url: "/Home/PurchaseCode",
        type: "GET",
        contentType: "application/json;charset=UTF-8",
        data: {
            'glCode': purchaseCode

        },
        dataType: "json",
        success: function (result) {
            $('#txtNPurCodeDescription').val(result);



        },
        error: function (errormessage) {
            alert(errormessage.responseText);
        }
    });
    return false;
}
0 голосов
/ 02 октября 2018

В вашем значении отсутствует структура json.

return varcmd;, например, "ABC", схема не существует

success: function(result) {
    $('#txtNPurCodeDescription').val(result.gl_desc);
},

исправить> только результат.

success: function(result) {
    $('#txtNPurCodeDescription').val(result);
},
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...