span ו select

זהר פלד

New member
מזת´ומרת?

לכל אובייקט יש את דרכי הפעולה שלו... אתה יכול לעשות חיפוש על upload objects בפורום, ולבדוק...
 

*איתי*

New member
span ו select

אני רוצה לבנות סלקט כזה שברגע שמשנים את הערך שלו תופיע תיבת טקסט בהתאם לערך החדש שלו. ב ONCHANGE קראתי לפונקציה שמקבלת ID של SPAN ומסתירה אותו אם הוא הופיע ואחרת אם הוא לא, ומיכוון שאני רוצה שרק SPAN מסויים יפיע בהתאם לערך החדש של ה SELECT הכנסתי לשם של ה SPAN את הערך החדש של הסלקט (document.formname.selectname.value) אבל הערך שלו הוא תמיד undefined. אז איך עושים את זה?
 

LMOL

New member
מה אתה מתכוון ש...

הכנסת לשם של ה SPAN את הערך החדש של הסלקט אתה אמור להעביר את הערך של הסלקט לפונקציה שלך והשם של ה-SPAN נשאר קבוע או שאתה מתכוון למשהו אחר?
 

*איתי*

New member
מה אני מתכוון ש...

השם של הספאן מורכב בין השאר מהשם של הערך החדש של הסלקט (יש לי כמה ספאנים שלכל אחד יש שם שמורכב מערך אחר) וב ONCHANGE אני קורא לפונקציה שמקבלת את השם של הספאן שמורכב מהערך החדש של הסלקט בעזרת document.formname.selectname.value אבל הערך הזה מקבל undefined.. הקוד:
<% for i=1 to 5 %> <tr align="right"> <td><textarea name="notes<%=i%>" cols=8 rows=2 dir="rtl"></textarea></td> <td><input type="text" name="madrin<%=i%>" maxlength=50 size=8 dir="rtl"></td> <td><input type="text" name="cost<%=i%>" maxlength=50 size=8 dir="rtl"></td> <td><input type="text" name="hours<%=i%>" maxlength=50 size=8 dir="rtl"></td> <td><input type="text" name="days<%=i%>" maxlength=50 size=6 dir="rtl"></td> <td><select name="age_type" onChange="show_hide(´age<%=i%>´+document.form1.age_type.value)"> <option value="">--בחר--</option> <option value="k"> גיל </option> <option value="c"> כתות </option> <option value="t"> נוער </option> <option value="a"> מבוגרים </option> <option value="o"> קשישים </option> </select> <span id="age<%=i%>typek" style="display:none"><input type="text" name="age<%=i%>" maxlength=50 size=8></span> <span id="age<%=i%>typec" style="display:none"><input type="text" name="age<%=i%>" maxlength=50 size=8></span> <span id="age<%=i%>typet" style="display:none"></span> <span id="age<%=i%>typea" style="display:none"></span> <span id="age<%=i%>typeo" style="display:none"></span> </td> <td><input type="text" name="name<%=i%>" maxlength=50 size=8 dir="rtl"></td> </tr> <% next %>​
 

LMOL

New member
ואתה מקבל undefined

על הערך של ה-SELECT, כלומר על ה-document.form1.age_type.value? כי זה נראה דוקא בסדר מה שיכול להוות בעיה זה שקראת ל-SPAN שלך age<%=i%>typea ובזימון של הפונקציה אתה מעביר
´age<%=i%>´+document.form1.age_type.value​
שנותן age1a ולא age1typea כלומר, אתה לא מתייחס למילה type שנמצאת בשם של ה-SPAN ולכן הוא לא מתייחס ל-SPAN ונותן undefined על age1a
 

*איתי*

New member
תיקנתי את זה אבל הקטע זה שעשיתי

גם document.write ל document.form1.age_type.value וקיבלתי undefined אז זה סימן שהערך הזה לא מקבל את הערך של הסלקט..
 
הקטע הזה:

="show_hide(´age<%=i%>´+document.form1.age_type.value)">​
מאוד לא מובן. איזה פרמטרים הפונקציה show_hide מצפה לקבל?
 

*איתי*

New member
זה אמור להיות

="show_hide(´age<%=i%>´type+document.form1.age_type.value)">​
היא צריכה לקבל ID של SPAN ואם הוא מוצג אז היא תסתיר אותו ואם הוא לא היא תציג אותו
 

*איתי*

New member
ה TYPE אמור להיות לפני הגרש..

אי אפשר להוסיף את הערך של age_type למחרוזת??
 

*איתי*

New member
נראת טוב, הייתי אפילו אומר שהיא ממש

שווה
סתם הנה היא:
function show_hide(name) { if (document.getElementById(name).style.display == "none") document.getElementById(name).style.display = "" else document.getElementById(name).style.display = "none" }​
 

*איתי*

New member
הנה היא

<select name="age_type" onChange="show_hide(´age<%=i%>type´+document.form1.age_type.value)"> <option value="">--בחר--</option> <option value="k"> גיל </option> <option value="c"> כתות </option> <option value="t"> נוער </option> <option value="a"> מבוגרים </option> <option value="o"> קשישים </option> </select>​
 
למעלה