اذهب إلى المحتوى

السؤال

نشر

باعتبار الاستمارة التالية بـ html:

<div class="small-12 medium-3 column hide" id="special-set-div">
  <label>Special Set?
    <select id="special-set" name="special_set">
      <option value>Select</option>
      <option value="Yes">Yes</option>
      <option value="No">No</option>
    </select>
  </label>
</div>

ما هي القيمة المُرسلة من الاستمارة في حالة عدم تحديد أي قيمة؟

Recommended Posts

  • 0
نشر (معدل)

أنت من يقوم بتحديد هذه القيمة عادةً تكون 0 أو -1 أو "default" وتستخدم هذه القيمة في التحقق validation عندما يكون الاختيار من القائمة المنسدلة مطلوب ولا يُسمح بتركها من دون أن تختار واحد من الخيارات.

حيث يتم التحقق فيما إذا كانت القيمة المختارة تساوي القيمة الافتراضية لـ select أم لا ويتم إظهار رسالة تنبيه في حال كانت القيمة الافتراضية هي المختارة.

المثال التالي يشرح كيفية تحديد القيمة الافتراضية وتطبيق التحقق RequiredValidation باستخدام جافاسكربت:

<select>
  <option value="default">Choose...</option>
  <option value="1">1</option>
  <option value="2">2</option>
</select>
$.validator.addMethod("valueNotEquals", function(value, element, arg){
  return arg != value;
 }, "Value must not equal arg.");

 // configure your validation
 $("form").validate({
  rules: {
   SelectName: { valueNotEquals: "default" }
  },
  messages: {
   SelectName: { valueNotEquals: "Please select an item!" }
  }  
 });

 

تم التعديل في بواسطة Lujain
  • 1
نشر (معدل)

في حال لم يتم تعيين قيمة افتراضية default value ولم يتم اخيار قيمة، سيتم إرسال القيمة string.

ومن خلال موقع W3C specification نحصل على :

value = string
Provides a value for element. If there isn't, the value of an option element is the textContent of the element.

ولتفادي ذلك يلجأ المبرمجون إلى استعمال  الخاصية selected لتحديد قيمة محددة تكون هي القيمة المُرسلة إن لم يتم الاختيار من قبل المستخدم بالشكل التالي:

<select name="city">
  <option value="Bos" selected>Boston</option>
  <option value="Cam">Cambridge</option>
</select>

 

تم التعديل في بواسطة E.Nourddine

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...