مرجع تخصصی برنامه نویسان

انجمن تخصصی برنامه نویسان فارسی زبان

کاربر سایت

محسن نظافت

عضویت از 1394/07/12

اعمال شرط بر روی کنترل Select2

  • دوشنبه 16 آذر 1394
  • 18:19
تشکر میکنم

با سلام

من از کنترل Select2 استفاده کردم می خواهم زمانی که txt1 مقدار داشت ajax  مربوط به کنترل txt2 اعمال و AutoFilter و گرفتن اطلاعات از سمت سرور انجام گیرد 

لطفا راهنمایی نمایید چگونه این شرط را برای این موضوع اعمال نمایم

 

 @Html.TextBoxFor(x => x.Title1, new { id = "txt1" })

 @Html.TextBoxFor(x => x.Title2, new { id = "txt2" })

 

 

 

$(document).ready(function () {
        $('#txt2').select2({
            dir: "rtl",
            //tags: "true",
            placeholder: "لطفا یک مورد انتخاب نمایید",
            allowClear: true,
            
            ajax: {
            url: '@Url.Action("ActionName", "ControllerName")',
            dataType: 'json',
            delay: 250,
            data: function (term) {
                //alert("Data");
                return {
                    id: $("#txt1").val(),
                    title: term,
                    // page: params.page
                };
            },

 

 

            results: function (data) {
                return {
                    results: $.map(data, function (item) {
                        return { id: item.Id, text: item.Title };
                    })
                };
            }
                 , cache: true
            }
    });

 

پاسخ های این پرسش

تعداد پاسخ ها : 1 پاسخ
کاربر سایت

سجاد باقرزاده

عضویت از 1392/02/24

  • سه شنبه 17 آذر 1394
  • 09:23

با کد زیر باید مشکل حل شود، لطفا تست کنید (در پایین صفحه بین تگ script قرار دهید) :

$('#txt2').prop("disabled", true);
    $('#txt1').change(function () {
        if ($(this).val() != "") {
            $('#txt2').prop("disabled", false);
            $('#txt2').select2({
                dir: "rtl",
                //tags: "true",
                placeholder: "لطفا یک مورد انتخاب نمایید",
                allowClear: true,
                ajax: {
                    url: '@Url.Action("ActionName", "ControllerName")',
                    dataType: 'json',
                    delay: 250,
                    data: function (term) {
                        //alert("Data");
                        return {
                            id: $("#txt1").val(),
                            title: term,
                            // page: params.page
                        };
                    },
                    results: function (data) {
                        return {
                            results: $.map(data, function (item) {
                                return { id: item.Id, text: item.Title };
                            })
                        };
                    }
                    , cache: true
                }
            });
        } else {
            $('#txt2').prop("disabled", true);
        }
    });

 

کاربرانی که از این پست تشکر کرده اند

هیچ کاربری تا کنون از این پست تشکر نکرده است

اگر نیاز به یک مشاور در زمینه طراحی سایت ، برنامه نویسی و بازاریابی الکترونیکی دارید

با ما تماس بگیرید تا در این مسیر همراهتان باشیم :)