הוסטס - פורום אחסון האתרים הגדול בישראל

הוסטס - פורום אחסון האתרים הגדול בישראל (https://hosts.co.il/forums/index.php)
-   פורום תיכנות (https://hosts.co.il/forums/forumdisplay.php?f=14)
-   -   [JS] צריך קצת עזרה (https://hosts.co.il/forums/showthread.php?t=34359)

Elad-A 09-11-06 17:53

[JS] צריך קצת עזרה
 
שלום,

אחרי זמן לא קצר בלי שאלות אני צריך ממכם עזרה קטנה.

ניסיתי לעשות משהו כזה:

PHP קוד:


<? $i '150'?>
<script type="text/javascript">
var s = <?=$i?> * document.getElementById('ea');
</script>
<input type="text" id="ea" onkeyup="document.getElementById('how').innerHTML='כמות: '+value+' '+'המחיר הוא: '+s">
<div id="how"></div>

זה אמור לחשב את הכמות שמתקבלת ב input כפול המחיר שהגדרתי ולתת את התוצאה. אין שגיאה כלשהי אבל זה פשוט תמיד מחזיר 0.
תודה לעוזרים.

Source 09-11-06 18:09

אני לא בטוח שזה יעזור אבל תוריד את הגרשיים מה150, זה אינטג'ר לא סטרינג.

אה עכשיו ראיתי עוד משו
אתה עושה getElementById('ea') לפני שהשכבה הזו מוגדרת... ואחרי הgetElementById תוסיף "נקודה-innerHTML"


ועכשיו עוד משו O.o
אתה לוקח את הערך של ea לפני שהמשתמש מכניס שם משו.

Elad-A 09-11-06 18:12

שאני מוסיף את ה value זה מחזיר "לא נמצא"

עריכה:

עשיתי ככה וזה עובד מצוין.

PHP קוד:

<? $i 150?> 
<input type="text" id="ea" onkeyup="document.getElementById('how').innerHTML='כמות: '+value+' '+'המחיר הוא: '+<?=$i?> * document.getElementById('ea').value"> 
<div id="how"></div>

האם יש דרך שיהיה ניתן להכניס רק מספרים?

Source 09-11-06 18:14

נכון, הid לא מוגדר עוד.

Elad-A 09-11-06 18:15

תראה את העריכה

Source 09-11-06 18:17

להכניס רק מספרים - אתה יכול לעשות ואלידציה.
במקום ישר לקחת את הערך, תבדוק קודם כך:
קוד:

if (isNum(myVar))
...


tnadav 09-11-06 18:21

בנוסף למה ש- sorce כתב, בשביל למנוע לכתוב משהו אתה מגדיר על משתנה בשם lastType, בכל הקשה אתה בודק אם הערך הוא מספר, אם הוא מספר אתה מעדכן את lastType לתוכן של ה- input, אם לא אז אתה מכניס ל- input את הערך של lastType

Elad-A 09-11-06 18:59

לא הצלחתי להשתמש בפונקציה isnum .

Source 09-11-06 20:05

אממ כנראה שכחתי איך בדיוק הולכת הפונ'...
בכל מקרה אתה יכול גם להשתמש בזה:
קוד:

if (!isNaN(myVar))
...

זה אומר לא לא מספר XD אז בעצם מספר ^^
(NaN = Not a Number)

Elad-A 09-11-06 20:24

אורי תודה את הבעיה הזאת סידרתי. אבל יש בעיה נוספת.

PHP קוד:

<? $i 150?> 
<script type="text/javascript">
var p = '100000';
</script>
<input type="text" id="ea" onkeyup="if(!isNaN(ea.value)){document.getElementById('how').innerHTML='כמות: '+value+' '+'המחיר הוא: '+<?=$i?> * document.getElementById('ea').value}"> 
<script>
if(p < ea.value)
{
document.getElementById('how').innerHTML= 'אין לך מספיק מטבעות';
}
</script>
<div id="how"></div>

זה אם הסכום שב input גדול מהמשתנה p זה לא מציג "'אין לך מספיק מטבעות'" מה הבעיה פה?


כל הזמנים הם GMT +2. הזמן כעת הוא 15:33.

מופעל באמצעות VBulletin גרסה 3.8.6
כל הזכויות שמורות ©
כל הזכויות שמורות לסולל יבוא ורשתות (1997) בע"מ