עבור לתוכן
View in the app

A better way to browse. Learn more.

HWzone

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

javascript יצירת אפשרויות לselect

Featured Replies

פורסם

שלום יש לי קוד בJS:

לאכלוס אפשרויות לשדות של יום חודש ושנה (תאריך):





function populate_date(){
var today = new Date();
var d = today.getDate();
var m = today.getMonth()+1;
var y = today.getFullYear();

for (i=1;i<=31;i++){
if (i==d){
document.getElementById("sel_d").options[i-0] = new Option(i, i, true, false);
}else{
document.getElementById("sel_d").options[i-0] = new Option(i, i, false, false);
}
}

for (i=1;i<=12;i++){
if (i==m){
document.getElementById("sel_m").options[i-0] = new Option(i, i, true, false);
}else{
document.getElementById("sel_m").options[i-0] = new Option(i, i, false, false);
}
}

for (i=2007;i<=y;i++){
if (i==y){
document.getElementById("sel_y").options[i-0] = new Option(i, i, true, false);
}else{
document.getElementById("sel_y").options[i-0] = new Option(i, i, false, false);
}
}
}


והוא עושה לי בעיות:

1 - בשדות של היום והחודש (sel_d , sel_m) הוא לא בוחר לי את היום של התאריך כברירת מחדל. למרות שלחיצה על F12 בכרום מראה שהיום הוא כן selected

2 - הוא מוסיף לי מלא שדות רקים בהתחלה וגם הוא- למרות שמסומן selected הוא לא בוחר את השנה כברירת מחדל.

חוץ מזה אני רוצה להוסיף לפונקציה אפשרות לקבל תאריך שאותו הוא יקבע כברירת מחדל בשדות המתאימים- אם הפונקציה לא קיבלה תאריך אז היא תקח את התאריך של היום

תודה מראש על העזרה

פורסם

1 - בדקת בדפדפנים אחרים? לא יודע איך כל דפדפן מתמודד עם הוספה של option שהוא selected. במקום הבדיקה בתוך הלולאה, אתה יכול להוסיף בסוף משהו כזה:


document.getElementById("sel_d").value = d;
document.getElementById("sel_m").value = m;
document.getElementById("sel_y").value = y;

(לא בדקתי אם הקוד הנ"ל עובד כי לא הבאת דף דוגמה ואין לי כח לבנות אחד, אבל מקווה שהבנת את הרעיון)

2 - האינדקס של options מבוסס אפס, כלומר מדובר במספור רציף של הפריטים שבתוך options מאפס ובקפיצות של אחד. לכן אם אתה מוסיף option שהאינדקס שלו הוא 2007, הקוד מייצר אוטומטית פריטים שהאינדקס שלהם הוא מ0 עד 2007, ולכן כל הפריטים הריקים שאתה רואה.

אופציה לתקן את זה תהיה נגיד לכתוב ככה:

document.getElementById("sel_y").options[i-2007] = new Option(i, i, false, false);

באופן כזה אתה דואג שהאינדקס יתחיל מאפס ויעלה בהתאם.

פורסם
  • מחבר

ההצעות עזרו והכל עובד יפה עכשיו- תודה.

ארכיון

דיון זה הועבר לארכיון ולא ניתן להוסיף בו תגובות חדשות.

דיונים חדשים

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.