نمایش نتایج 1 تا 17 از 17

نام تاپیک: enable کردن دکمه در ASP.NET با C#‎‎

  1. #1

    Question enable کردن دکمه در ASP.NET با C#‎‎

    سلام من یک صفحه دارم دارای چندین textbox و یک دکمه send هم دارم به طور default دکمه من disable است می خواهم به محض پر شدن textbox هایم دکمه enable شود به چه صورت انجام دهم ؟

  2. #2
    کاربر دائمی آواتار maxpayn2
    تاریخ عضویت
    مهر 1385
    محل زندگی
    طبقه سوم - اطاق اول - جولوی مانیتور - روی صندلی
    پست
    1,068

    نقل قول: enable کردن دکمه در asp.net با C#‎

    میشه از ontextchanged استفاده کرد ولی نیاز به Postback داره ، حتما راه بهتری هم هست

  3. #3

    نقل قول: enable کردن دکمه در ASP.NET با C#‎‎

    اخه یه textbox نیست که از ontextchanged استفاده کنم باید همشون پر شند بعد enable شود

  4. #4
    کاربر دائمی آواتار maxpayn2
    تاریخ عضویت
    مهر 1385
    محل زندگی
    طبقه سوم - اطاق اول - جولوی مانیتور - روی صندلی
    پست
    1,068

    نقل قول: enable کردن دکمه در asp.net با C#‎

    خب همشون همین event رو دارن ، ولی همونطور که گفتم راه حل خوبی نیست ، چون نیاز به PostBack داره

  5. #5
    کاربر دائمی
    تاریخ عضویت
    آبان 1385
    محل زندگی
    تهران
    پست
    1,112

    نقل قول: enable کردن دکمه در ASP.NET با C#‎‎

    باید از javascript استفاده کنید. متن هر textbox وقتی تغییر می کنه چک کنید ببینید textbox ها دارای متن هستند یا نه. اگه بودند دکمه رو enable کنید

  6. #6
    کاربر دائمی آواتار Nightbat
    تاریخ عضویت
    فروردین 1387
    محل زندگی
    ایران - تهران
    پست
    699

    نقل قول: enable کردن دکمه در asp.net با C#‎

            function Check() {
    var txt1 = document.getElementById('<%=TextBox1.ClientID %>');
    var txt2 = document.getElementById('<%=TextBox2.ClientID %>');
    if (txt1.value != '' && txt2.value != '') {
    document.getElementById('Button1').disabled = false;
    }
    }



    فانکشن بالا رو توی تگ script بذار. و برای هر تکست باکس هم مثل زیر عمل کن:
    <asp:TextBox ID="TextBox1" runat="server" onchange="Check()"></asp:TextBox>

  7. #7

    نقل قول: enable کردن دکمه در ASP.NET با C#‎‎

    دوست عزیز دستور onchange="Check() را نمیشناسه و اگه از
    OnTextChanged
    ="Check()" استفاده کنم error مده

  8. #8
    کاربر دائمی
    تاریخ عضویت
    آبان 1385
    محل زندگی
    تهران
    پست
    1,112

    نقل قول: enable کردن دکمه در ASP.NET با C#‎‎

    اینطوری نوشتید؟



    <script>
    function Check()
    {
    .
    .
    .
    }
    </script>

  9. #9

    نقل قول: enable کردن دکمه در ASP.NET با C#‎‎

    بله توی script نوشتم

  10. #10

    نقل قول: enable کردن دکمه در ASP.NET با C#‎‎

    در واقع onchange را نمیشناسه

  11. #11
    کاربر دائمی
    تاریخ عضویت
    آبان 1385
    محل زندگی
    تهران
    پست
    1,112

    نقل قول: enable کردن دکمه در ASP.NET با C#‎‎

    کد aspx رو بذارید

  12. #12

    نقل قول: enable کردن دکمه در ASP.NET با C#‎‎

    گذاشتم به این صورت
    <asp:TextBoxID="nametxt"runat="server"OnChange="Check()"Enabled="true"></asp:TextBox>

  13. #13

    نقل قول: enable کردن دکمه در ASP.NET با C#‎‎

    و وقتی کد زیر را می نویسم
    <asp:TextBoxID="nametxt"runat="server"OnTextChanged="Check()"Enabled="true"OnTextChanged="nametxt_TextChanged"></asp:TextBox>
    و بهد روی textbox کلیک می کنم کد زیر در asp می اد

    protectedvoid Check()(object sender, EventArgs e)
    {
    }
    که error میده

  14. #14

    نقل قول: enable کردن دکمه در asp.net با C#‎

    این مورد رو باید با jQuery پیاده سازی کنی... یک نمونه واست نوشتم:

    <div id="txtContainer">
    <input disabled="disabled" type="button" id="btn" />
    <input type="text" id="txt1" />
    <input type="text" id="txt2" />
    <input type="text" id="txt3" />
    </div>



    function checkTxt(event) {
    var isAllChecked = true;
    $("#txtContainer input:text").each(function() {
    if ($.trim(this.value).length < 1) {
    isAllChecked = false;
    return false;
    }
    });

    if (isAllChecked) {
    $("#btn").removeAttr("disabled");
    }
    else {
    $("#btn").attr("disabled", "disabled");
    }
    }

    $(function() {
    $("#txtContainer input:text").keyup(checkTxt);
    });

    بهتره TextBox ها رو در یک Container بگذاری تا دسترسی به اونها راحت تر باشه. در این حالت با بحث ClientID درگیر نمیشی.

    سوال به بخش jQuery منتقل شد.

    موفق باشید.

  15. #15
    کاربر دائمی آواتار Nightbat
    تاریخ عضویت
    فروردین 1387
    محل زندگی
    ایران - تهران
    پست
    699

    نقل قول: enable کردن دکمه در ASP.NET با C#‎‎

    این دقیقا کدیه که من نوشتم و داره کار می کنه:

    <script language="javascript" type="text/javascript">
    function Check() {
    var txt1 = document.getElementById('<%=TextBox1.ClientID %>');
    var txt2 = document.getElementById('<%=TextBox2.ClientID %>');
    if (txt1.value != "" && txt2.value != '') {
    document.getElementById('Button1').disabled = false;
    }
    }
    </script>

    و این هم تگ تکست باکس:

    <asp:TextBox ID="TextBox1" runat="server" onchange="Check()"></asp:TextBox>

  16. #16

    نقل قول: enable کردن دکمه در ASP.NET با C#‎‎

    نقل قول نوشته شده توسط Nightbat
    این دقیقا کدیه که من نوشتم و داره کار می کنه:
    کدی که شما نوشتی مشکلش اینه که وقتی تعداد TextBox ها زیاد بشه، نیاز داره تا کدهای بیشتری بهش اضافه بشه. ضمن اینکه تضمین Cross Browser بودن کدهای جاوا اسکریپت خیلی مهمه (در کل میگم)... قدرت jQuery با کدهای Native جاوا اسکریپت قابل مقایسه نیست.

    موفق باشید.

  17. #17
    کاربر دائمی آواتار Nightbat
    تاریخ عضویت
    فروردین 1387
    محل زندگی
    ایران - تهران
    پست
    699

    نقل قول: enable کردن دکمه در ASP.NET با C#‎‎‎

    نقل قول نوشته شده توسط Behrouz_Rad مشاهده تاپیک
    کدی که شما نوشتی مشکلش اینه که وقتی تعداد TextBox ها زیاد بشه، نیاز داره تا کدهای بیشتری بهش اضافه بشه. ضمن اینکه تضمین Cross Browser بودن کدهای جاوا اسکریپت خیلی مهمه (در کل میگم)... قدرت jQuery با کدهای Native جاوا اسکریپت قابل مقایسه نیست.

    موفق باشید.
    شما درست میگی. من این پست رو در جواب دوستی زدم که گفت کد من کار نمی کنه. منظورم این نبود که کد شما با کد من یکیه، مسلما در قدرت jQuery و درستی کد شما شکی نیست

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •