/
  • اعتبارسنجی دکمه های رادیویی

  • صفحه‌ها (2):
  • ارسال پاسخ   امتیاز موضوع:
    • 0 رأی - میانگین امیتازات: 0
    • 1
    • 2
    • 3
    • 4
    • 5

    حالت موضوعی | حالت خطی اعتبارسنجی دکمه های رادیویی
    نویسنده پیام
    webnevesht آفلاین
    محمدرضا سلطانی
    ***

    ارسال‌ها: 972
    تاریخ عضویت: ۱۳۹۰ آذر ۲۵
    اعتبار: 22
    تشکرها : 384
    ( 702 تشکر در 427 ارسال )
    ارسال: #1
    اعتبارسنجی دکمه های رادیویی
    سلام.یه فرم نظرسنجی هست با تعدادی سوال که هر کدوم از سوال ها سه چهار پنج تا گزینه دارن.
    چه جوری میشه یه تابع جاوا اسکریپت اعتبارسنجی براش نوشت که کاربر مجاز به پاسخ دادن به تمام سوالات باشه.
    اینو نوشتم به عنوان تست اما مشکلی که داره اینه که طرف مجبوره گزینه ی اول هر سوال رو انتخاب کنهDodgy من جاوا اسکریپت زیاد بلد نیستم.
    کد:
    function testfill()
    {
    var i;
    for (i=1 ; i <= 5 ; i++) {
       var name = i;
       var valueName = document.getElementById(name).checked;
       if (valueName == "") {
          // Error
          alert("پاسخگویی به تمامی سوالات الزامی است");
          document.getElementById(name).focus();
            return false;
       }
    }
    }
    میشه راهنماییم بفرمایین.خیلی عجله ای باید اینو تحویل بدم امشب و یه مقدار حالم خوب نیست قدرت تحلیلم اومده پایینUndecided

    الان فرض کردم تعداد سوالات 5تاست و نام فیلدها هم مثلا 1.2.3.4.5 هست که هرکدوم ممکنه سه چهارتا گزینه داشته باشن
    __________________________________________________________________________
    بنده طعم ايمان را نمي چشد، تا اينكه دريابد آنچه اتفاق نيفتاده است نمي شد كه اتفاق بيفتد؛و آنچه شده و اتفاق افتاده است,نمي شد كه نشود و اتفاق نيفتد....حضرت علي(ع)
    (آخرین ویرایش در این ارسال: ۱۳۹۱ آبان ۳ ۰۶:۴۴ عصر، توسط webnevesht.)
    ۱۳۹۱ آبان ۳ ۰۶:۴۳ عصر
    یافتن ارسال‌ها WWW پاسخ با نقل قول
     تشکر شده توسط :
    pary_daryayi آفلاین
    Mermaid
    ****

    ارسال‌ها: 620
    تاریخ عضویت: ۱۳۹۱ خرداد ۲۸
    اعتبار: 19
    تشکرها : 729
    ( 207 تشکر در 117 ارسال )
    ارسال: #2
    RE: اعتبارسنجی دکمه های رادیویی
    من یه بار از این کد استفاده کردم ، خیلی بهینه نیست ، ولی جواب میده .
    کد:
    <html>
    <head>
    <meta charset="utf-8"/>
    <script type="text/javascript">
    function CheckBoxesValidations() {
    if (document.form1.CHKBOX1.checked == false &&
        document.form1.CHKBOX2.checked == false &&
        document.form1.CHKBOX3.checked == false
        ||
        
        document.form1.CHKBOX4.checked == false &&
        document.form1.CHKBOX5.checked == false &&
        document.form1.CHKBOX6.checked == false
        
        ) {
        alert('pleae all question ');
           return false;

         }

        else {

      return true;

      }
      

    }
    </script>
    <script type="text/javascript">
    function myfunction() {
      alert("ok");
      }
    </script>
    </head>
    <body>
                
                <form onsubmit="return  myfunction() ;" name="form1" action="" >
                <p>soal1</p>
                <input type="checkbox" name="CHKBOX1" id="CHKBOX1" value="1" dir="rtl"/>گزینه اول

                <input type="checkbox" name="CHKBOX2" id="CHKBOX2" value="2"/>گزینه دوم

                <input type="checkbox" name="CHKBOX3"  id="CHKBOX3" value="3"/>گزینه سوم
                
                <br/><p>soal2</p>
                <input type="checkbox" name="CHKBOX4" id="CHKBOX4" value="1" dir="rtl"/>گزینه اول

                <input type="checkbox" name="CHKBOX5" id="CHKBOX5" value="2"/>گزینه دوم

                <input type="checkbox" name="CHKBOX36"  id="CHKBOX6" value="3"/>گزینه سوم
                
                <input type="button" onclick=" CheckBoxesValidations() && myfunction()"    value="انتخاب" />
                </form>
    </body>
    </html>
    __________________________________________________________________________
    آرام باش ؛ توكل كن ؛ تفكر كن و سپس آستينها را بالا بزن , آنگاه دستان خداوند را خواهي ديد كه زودتر از تو دست به كار شده است.امام علي عليه السلام.
    ۱۳۹۱ آبان ۳ ۰۸:۰۶ عصر
    یافتن ارسال‌ها پاسخ با نقل قول
     تشکر شده توسط :
    webnevesht آفلاین
    محمدرضا سلطانی
    ***

    ارسال‌ها: 972
    تاریخ عضویت: ۱۳۹۰ آذر ۲۵
    اعتبار: 22
    تشکرها : 384
    ( 702 تشکر در 427 ارسال )
    ارسال: #3
    RE: اعتبارسنجی دکمه های رادیویی
    ماله شما اسم فیلدها فرق میکنه.
    ماله من 18تا سواله. هر سوال چند تا گزینه داره.
    که آیدی اون سوال رو کردم نام فیلد.
    مثلا اگه سوال اول آی دیش یک باشه و سه تا گزینه داشته باشه نام هر سه فیلد 1 هست.

    به صورت دستی میشه بیاد آدم تعریف کنه مثل شما...اما میخوام به صورت اتومات باشه و خودش حساب کنه همه چیز رو
    __________________________________________________________________________
    بنده طعم ايمان را نمي چشد، تا اينكه دريابد آنچه اتفاق نيفتاده است نمي شد كه اتفاق بيفتد؛و آنچه شده و اتفاق افتاده است,نمي شد كه نشود و اتفاق نيفتد....حضرت علي(ع)
    (آخرین ویرایش در این ارسال: ۱۳۹۱ آبان ۳ ۰۸:۲۵ عصر، توسط webnevesht.)
    ۱۳۹۱ آبان ۳ ۰۸:۱۳ عصر
    یافتن ارسال‌ها WWW پاسخ با نقل قول
     تشکر شده توسط :
    farhadfery آفلاین
    fery
    ****

    ارسال‌ها: 285
    تاریخ عضویت: ۱۳۸۹ فروردين ۳۰
    اعتبار: 11
    تشکرها : 468
    ( 214 تشکر در 123 ارسال )
    ارسال: #4
    RE: اعتبارسنجی دکمه های رادیویی
    از پلاگین های jquery استفاده کنید.
    __________________________________________________________________________
    خدایا، این دنیا را بیهوده نیافریدی.
    ۱۳۹۱ آبان ۳ ۰۸:۳۷ عصر
    یافتن ارسال‌ها پاسخ با نقل قول
     تشکر شده توسط :
    webnevesht آفلاین
    محمدرضا سلطانی
    ***

    ارسال‌ها: 972
    تاریخ عضویت: ۱۳۹۰ آذر ۲۵
    اعتبار: 22
    تشکرها : 384
    ( 702 تشکر در 427 ارسال )
    ارسال: #5
    RE: اعتبارسنجی دکمه های رادیویی
    ببینین حتی الان اومدم مدل تابع که پری دریایی نوشته دستی نوشتم تابعمو اما اولین پیغام خطا رو که میده به جای اینکه برگرده به یکی از عناصر فرم ، پردازش فرم رو انجام میده و ادامه میده کارشو....خواهش میکنم کمکم کنین...معدم ام بدجوری اذیت میکنه و میخوام برم درمانگاه اما باید اینو اول اصلاح کنم بعد برم
    کد:
    function CheckBoxesValidations() {
    if ((document.savefrm.a1[0].checked == false &&
        document.savefrm.a1[1].checked == false &&
        document.savefrm.a1[2].checked == false &&
        document.savefrm.a1[3].checked == false &&
        document.savefrm.a1[4].checked == false)

        ||
        
        (document.savefrm.a2[0].checked == false &&
        document.savefrm.a2[1].checked == false &&
        document.savefrm.a2[2].checked == false)
        ||
            
       ( document.savefrm.a3[0].checked == false &&
        document.savefrm.a3[1].checked == false &&
        document.savefrm.a3[2].checked == false)
        ||
        
       ( document.savefrm.a4[0].checked == false &&
        document.savefrm.a4[1].checked == false &&
        document.savefrm.a4[2].checked == false)
        ||
        
       ( document.savefrm.a5[0].checked == false &&
        document.savefrm.a5[1].checked == false &&
        document.savefrm.a5[2].checked == false)
        ||
        
        (document.savefrm.a6[0].checked == false &&
        document.savefrm.a6[1].checked == false &&
        document.savefrm.a6[2].checked == false)
        ||
        
        (document.savefrm.a7[0].checked == false &&
        document.savefrm.a7[1].checked == false &&
        document.savefrm.a7[2].checked == false)
        ||
        
        (document.savefrm.a8[0].checked == false &&
        document.savefrm.a8[1].checked == false &&
        document.savefrm.a8[2].checked == false)
        ||
        
        (document.savefrm.a9[0].checked == false &&
        document.savefrm.a9[1].checked == false &&
        document.savefrm.a9[2].checked == false)
        ||
        
       ( document.savefrm.a10[0].checked == false &&
        document.savefrm.a10[1].checked == false &&
        document.savefrm.a10[2].checked == false)
        ||
        
       ( document.savefrm.a11[0].checked == false &&
        document.savefrm.a11[1].checked == false &&
        document.savefrm.a11[2].checked == false)
        ||
        
        (document.savefrm.a12[0].checked == false &&
        document.savefrm.a12[1].checked == false &&
        document.savefrm.a12[2].checked == false)
        ||
        (document.savefrm.a13[0].checked == false &&
        document.savefrm.a13[1].checked == false &&
        document.savefrm.a13[2].checked == false)
        ||
        (document.savefrm.a14[0].checked == false &&
        document.savefrm.a14[1].checked == false &&
        document.savefrm.a14[2].checked == false)
        ||
       ( document.savefrm.a15[0].checked == false &&
        document.savefrm.a15[1].checked == false &&
        document.savefrm.a15[2].checked == false)
        ||
       ( document.savefrm.a16[0].checked == false &&
        document.savefrm.a16[1].checked == false &&
        document.savefrm.a16[2].checked == false &&
        document.savefrm.a16[3].checked == false &&
        document.savefrm.a16[4].checked == false &&
        document.savefrm.a16[5].checked == false)
        ||
       ( document.savefrm.a17[0].checked == false &&
        document.savefrm.a17[1].checked == false &&
        document.savefrm.a17[2].checked == false)
        ||
       ( document.savefrm.a18[0].checked == false &&
        document.savefrm.a18[2].checked == false)
        ) {
        alert('پاسخگویی به تمام سوالات الزامی است');
       document.getElementsByName("a1").focus();
        return false;
         }  

    }
    __________________________________________________________________________
    بنده طعم ايمان را نمي چشد، تا اينكه دريابد آنچه اتفاق نيفتاده است نمي شد كه اتفاق بيفتد؛و آنچه شده و اتفاق افتاده است,نمي شد كه نشود و اتفاق نيفتد....حضرت علي(ع)
    ۱۳۹۱ آبان ۳ ۰۹:۰۶ عصر
    یافتن ارسال‌ها WWW پاسخ با نقل قول
     تشکر شده توسط :
    undefined غایب
    احسان
    *******

    ارسال‌ها: 2,088
    تاریخ عضویت: ۱۳۸۸ مهر ۲۹
    اعتبار: 76
    تشکرها : 2005
    ( 2071 تشکر در 1219 ارسال )
    ارسال: #6
    RE: اعتبارسنجی دکمه های رادیویی
    نقل قول: معدم ام بدجوری اذیت میکنه و میخوام برم درمانگاه اما باید اینو اول اصلاح کنم

    اشکال نداره! خود منم از دیشب تا ساعت 6 صبح امروز بیمارستان بودم Big Grin
    هنوزم فرصت نشده بخوابم Angel

    سورس واضحه، اما اگر مشکل داشتی بگو تا توضیح بدم برات.

    کد:
    <html>
    <head>
    <script type="text/javascript" language="javascript" src="jquery.js"></script>
    <script type="text/javascript" language="javascript">
    $(document).ready(function(e) {
        var q= new Array();
        var count=4; // count question;
        

        $('input:radio').click(function(){
            id=$(this).attr('id');
            q[id]=true;
        });
        
        $('#sub').click(function(){
            for(i=0;i<=count;i++)
                if(!q[i])
                    alert('Q'+(i+1)+': false!');
        });        
    });
    </script>
    </head>
    <body>
    <div id="result"></div>
    <br>
    <h3> Q1:</h3>
    <input type="radio" name="r1[]" id="0"> R1<br>
    <input type="radio" name="r1[]" id="0"> R2<br>
    <input type="radio" name="r1[]" id="0"> R3<br>

    <h3> Q2:</h3>
    <input type="radio" name="r2[]" id="1"> R1<br>
    <input type="radio" name="r2[]" id="1"> R2<br>
    <input type="radio" name="r2[]" id="1"> R3<br>

    <h3> Q3:</h3>
    <input type="radio" name="r3[]" id="2"> R1<br>
    <input type="radio" name="r3[]" id="2"> R2<br>
    <input type="radio" name="r3[]" id="2"> R3<br>

    <h3> Q4:</h3>
    <input type="radio" name="r4[]" id="3"> R1<br>
    <input type="radio" name="r4[]" id="3"> R2<br>
    <input type="radio" name="r4[]" id="3"> R3<br>

    <h3> Q5:</h3>
    <input type="radio" name="r5[]" id="4"> R1<br>
    <input type="radio" name="r5[]" id="4"> R2<br>
    <input type="radio" name="r5[]" id="4"> R3<br>

    <input type="submit" name="sub" value="Submit" id="sub">
    </body>
    </html>

    موفق باشی و امیدوارم هر چی زودتر حالت خوب شه Wink
    __________________________________________________________________________
    هر چیزی که در جستن آنی آنی...
    (آخرین ویرایش در این ارسال: ۱۳۹۱ آبان ۳ ۰۹:۲۸ عصر، توسط undefined.)
    ۱۳۹۱ آبان ۳ ۰۹:۱۹ عصر
    یافتن ارسال‌ها پاسخ با نقل قول
     تشکر شده توسط : pary_daryayi
    webnevesht آفلاین
    محمدرضا سلطانی
    ***

    ارسال‌ها: 972
    تاریخ عضویت: ۱۳۹۰ آذر ۲۵
    اعتبار: 22
    تشکرها : 384
    ( 702 تشکر در 427 ارسال )
    ارسال: #7
    RE: اعتبارسنجی دکمه های رادیویی
    حاجی نتونستم از این استفاده کنم. فعلا واسه حل شدن اون مشکل همون کد طولانی ای که گذاشتم رو میشه ببینین که چرا بعد از نمایش خطا میره به صفحه پردازش فرم؟
    __________________________________________________________________________
    بنده طعم ايمان را نمي چشد، تا اينكه دريابد آنچه اتفاق نيفتاده است نمي شد كه اتفاق بيفتد؛و آنچه شده و اتفاق افتاده است,نمي شد كه نشود و اتفاق نيفتد....حضرت علي(ع)
    ۱۳۹۱ آبان ۳ ۰۹:۲۷ عصر
    یافتن ارسال‌ها WWW پاسخ با نقل قول
     تشکر شده توسط :
    undefined غایب
    احسان
    *******

    ارسال‌ها: 2,088
    تاریخ عضویت: ۱۳۸۸ مهر ۲۹
    اعتبار: 76
    تشکرها : 2005
    ( 2071 تشکر در 1219 ارسال )
    ارسال: #8
    RE: اعتبارسنجی دکمه های رادیویی
    کد رو یه مقدار اصلاح کردم.

    نقل قول: حاجی نتونستم از این استفاده کنم. فعلا واسه حل شدن اون مشکل همون کد طولانی ای که گذاشتم رو میشه ببینین که چرا بعد از نمایش خطا میره به صفحه پردازش فرم؟

    چرا؟ مشکلت چیه؟
    اصلا میتونی برای هر سوال یک گزینه رو به طور پیش فرض انتخاب کنی تا در صورت نیاز شخص اصلاحش کنه! البته اگر مشکل ایجاد نمیکنه.
    __________________________________________________________________________
    هر چیزی که در جستن آنی آنی...
    ۱۳۹۱ آبان ۳ ۰۹:۳۱ عصر
    یافتن ارسال‌ها پاسخ با نقل قول
     تشکر شده توسط :
    webnevesht آفلاین
    محمدرضا سلطانی
    ***

    ارسال‌ها: 972
    تاریخ عضویت: ۱۳۹۰ آذر ۲۵
    اعتبار: 22
    تشکرها : 384
    ( 702 تشکر در 427 ارسال )
    ارسال: #9
    RE: اعتبارسنجی دکمه های رادیویی
    این کد اصلاح شده ی شما اگه فرم خالی باشه به ازای تعداد فیلدهایی که داری پیغام خطا میده. مثلا الان 5تاست اگه فرم خالی باشه 5تا پیغام خطا میده. اون کدجاوایی که من گذاشتم مشخصه که چرا بعد از پیغام خطا فرم اجرا میشه؟
    __________________________________________________________________________
    بنده طعم ايمان را نمي چشد، تا اينكه دريابد آنچه اتفاق نيفتاده است نمي شد كه اتفاق بيفتد؛و آنچه شده و اتفاق افتاده است,نمي شد كه نشود و اتفاق نيفتد....حضرت علي(ع)
    ۱۳۹۱ آبان ۳ ۰۹:۳۸ عصر
    یافتن ارسال‌ها WWW پاسخ با نقل قول
     تشکر شده توسط :
    undefined غایب
    احسان
    *******

    ارسال‌ها: 2,088
    تاریخ عضویت: ۱۳۸۸ مهر ۲۹
    اعتبار: 76
    تشکرها : 2005
    ( 2071 تشکر در 1219 ارسال )
    ارسال: #10
    RE: اعتبارسنجی دکمه های رادیویی
    مگه تعداد سوالاتت از قبل معلوم نیست؟

    به تعداد سوالاتت باید مقدار متغیر count رو اصلاح کنی
    __________________________________________________________________________
    هر چیزی که در جستن آنی آنی...
    (آخرین ویرایش در این ارسال: ۱۳۹۱ آبان ۳ ۰۹:۴۲ عصر، توسط undefined.)
    ۱۳۹۱ آبان ۳ ۰۹:۴۰ عصر
    یافتن ارسال‌ها پاسخ با نقل قول
     تشکر شده توسط :
    « قدیمی تر | تازه‌ تر »

  • صفحه‌ها (2):
  • ارسال پاسخ
    پرش به انجمن:


    کاربرانِ درحال بازدید از این موضوع: 1 مهمان
    IranPHP.org | تماس با ما | بازگشت به بالا | بازگشت به محتوا | بایگانی | پیوند سایتی RSS