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

הוסטס - פורום אחסון האתרים הגדול בישראל (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=26505)

miniature 16-07-06 02:33

[JS] בעיה עם קריאה לפונקציה..
 
יש לי שדה בטופס (input מסוג text) בשם bla ויש לי פונקציה בשם abc והיא נראית כך:
קוד:

function abc(input_name) {
  input_name.value.focus();
}

עכשיו, כשאני קורא לה זה:
קוד:

abc('bla')
בפונקציה עצמה:
קוד:

function abc('bla') {
  'bla'.value.focus();
}

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

תודה,

בניה 16-07-06 06:14

ב"ה


לא ככה מגדירים ארגומנט.
הגדרת הפונקציה צכה להיות ככה:
קוד:

function abc(bla) {
בלי הגרשים.

miniature 16-07-06 06:23

ציטוט:

נכתב במקור על ידי בניה
ב"ה


לא ככה מגדירים ארגומנט.
הגדרת הפונקציה צכה להיות ככה:
קוד:

function abc(bla) {
בלי הגרשים.

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

יש לי בעיה אחרת :(
מישהו כאן *אהמ* BlueNose *אהמ* אמר פעם שהמשתנים ב JS ניתנים לשינוי בכל מקום בקוד.. כששאלתי לגבי משתנים גלובאליים ב JS .
יש לי משתנה כלשהו, ואני מנסה לשנות אותו בפונקציה כלשהי, והוא לא משתנה.. בעיה! :/

בניה 16-07-06 06:43

ב"ה



bla.focus();
פוקוס לא עושים ל value, עושים לאוביקט עצמו.

miniature 16-07-06 06:46

ציטוט:

נכתב במקור על ידי בניה
ב"ה



bla.focus();
פוקוס לא עושים ל value, עושים לאוביקט עצמו.

כן, כבר תיקנתי את זה אצלי :)

ואתה יודע במקרה איך אפשר לפתור את הבעיה עם המשתנה?

eLad 16-07-06 07:11

ציטוט:

נכתב במקור על ידי miniature
יש לי בעיה אחרת :(
מישהו כאן *אהמ* BlueNose *אהמ* אמר פעם שהמשתנים ב JS ניתנים לשינוי בכל מקום בקוד.. כששאלתי לגבי משתנים גלובאליים ב JS .
יש לי משתנה כלשהו, ואני מנסה לשנות אותו בפונקציה כלשהי, והוא לא משתנה.. בעיה! :/

משתנים למשל שאתה מגדיר ב onload = function() למשל לא יוכלו לשמש אותך בהמשך התוכנית ..

אם תצרף דוגמא קטנה למה שאתה מנסה לעשות, נוכל לעזור יותר

miniature 16-07-06 07:14

קוד:

var bla = "abc";
function sdc() {
  bla = "abbc";
}
alert(bla); //alerts abc

אני רוצה לשנות מתוך הפונקציה משתנה שהגדרתי מחוצה לה.
מקווה שהבנת.:-)

eLad 16-07-06 07:16

אתה לא קורא בכלל לפונקציה..
PHP קוד:

var bla "abc";
function 
sdc() {
  
bla "abbc";
}
sdc(); //calling the function
alert(bla); //alerts abbc 


miniature 16-07-06 07:17

בעמוד עצמו אני קורא לפונקציה סתם באיזה מקום בדף..
זה לא פועל.

eLad 16-07-06 07:20

ציטוט:

נכתב במקור על ידי miniature
בעמוד עצמו אני קורא לפונקציה סתם באיזה מקום בדף..
זה לא פועל.

תריץ את הקוד שהבאתי לך, זה פועל

miniature 16-07-06 07:22

אני אומר לך, אני קראתי לפונקציה אבל מתוך ה HTML באירוע onkeyup בinput .. וזה לא עובד..

eLad 16-07-06 07:27

ציטוט:

נכתב במקור על ידי miniature
אני אומר לך, אני קראתי לפונקציה אבל מתוך ה HTML באירוע onkeyup בinput .. וזה לא עובד..

זה עובד אחלה בחלה

PHP קוד:

<script>

var 
bla "abc";
function 
sdc() {
  
bla "abbc";
  
alert(bla); //alerts abbc
}

alert(bla); //alerts abc
</script>

<form>

<input type="text" name="aa" onkeyup="sdc()">

</form> 


miniature 16-07-06 07:37

ציטוט:

נכתב במקור על ידי eLad
זה עובד אחלה בחלה

PHP קוד:

<script>
 
var 
bla "abc";
function 
sdc() {
bla "abbc";
alert(bla); //alerts abbc
}
 
alert(bla); //alerts abc
</script>
 
<form>
 
<input type="text" name="aa" onkeyup="sdc()">
 
</form> 


הנה הבעיה!
אני רוצה שאיפה שכתוב בהערה alerts abc יהיה כתוב abbc !

eLad 16-07-06 07:41

ציטוט:

נכתב במקור על ידי miniature
הנה הבעיה!
אני רוצה שאיפה שכתוב בהערה alerts abc יהיה כתוב abbc !

אבל הקוד כבר הורץ, אתה לא יכול לחזור ל ALERT הזה ..

miniature 16-07-06 07:45

ציטוט:

נכתב במקור על ידי eLad
אבל הקוד כבר הורץ, אתה לא יכול לחזור ל ALERT הזה ..

|מתעצבן קטן| אני מנסה להגדיר מחדש את המשתנה שהוגדר מחוץ לפונקציה ושההגדרה החדשה של אותו משתנה תעבוד לאחר הרצת הפונקציה. מקווה שהבנת. B-)

eLad 16-07-06 07:48

השינוי כן עובד.. -

PHP קוד:

<script>

var 
bla "abc";
function 
sdc() {
  
bla "abbc";
  
sdc2();
}

function 
sdc2() {
   
alert(bla//alerts abbc
}

</script> 

ואם גם זה לא בסדר, אז צרף דוגמא קטנה להמחשת העניין (תעשה לי טובה, אל תצרף פה 100 שורות קוד כי אין לי כוח לעבור על זה.. ;P )

miniature 16-07-06 07:51

ציטוט:

נכתב במקור על ידי eLad
השינוי כן עובד.. -

PHP קוד:

<script>
 
var 
bla "abc";
function 
sdc() {
bla "abbc";
sdc2();
}
 
function 
sdc2() {
alert(bla//alerts abbc
}
 
</script> 

ואם גם זה לא בסדר, אז צרף דוגמא קטנה להמחשת העניין (תעשה לי טובה, אל תצרף פה 100 שורות קוד כי אין לי כוח לעבור על זה.. ;P )

HTML קוד:

<html>
<head>
<script type="text/javascript">
var abc = 1;
var abc2 = 1;
function bla() {
if(...) {
document.write("bla");
abc = 0;
}
}
function bla2() {
if(...) {
document.write("bla2");
abc2 = 0;
}
}
if((abc == 0) && (abc2 == 0)) {
document.write("HAHA");
}
</script>
</head>
<body>
<input type="text" onkeyup="javascript:bla()" />
<input type="text" onkeyup="javascript:bla2()" />
</body>
</html>

אני רוצה שידפיס HAHA .
ולמה לעזאזל אתה בלתי נראה? =/

eLad 16-07-06 08:01

אתה צריך לתקוע את ה IF של ה HAHA בתוך פונקציה ולקרוא לה אחרי כל פונקציה (bla או bla2) .. אתה לא יכול לעבור שוב על קוד כזה שכבר כתבת מבלי שיהיה בתוך פונקציה ואתה קורא לו (נניח)

miniature 16-07-06 08:03

לקרוא לה אחרי כל פונקציה או בסוף כל פונקציה?

eLad 16-07-06 08:08

ציטוט:

נכתב במקור על ידי miniature
לקרוא לה אחרי כל פונקציה או בסוף כל פונקציה?

בסוף כל פונקציה מן הסתם (בתוך הפונקציה עצמה)

כי אחרת, הקוד יורץ רק בפעם הראשונה שהדף מפוענח ..

miniature 16-07-06 08:12

ציטוט:

נכתב במקור על ידי eLad
בסוף כל פונקציה מן הסתם (בתוך הפונקציה עצמה)

כי אחרת, הקוד יורץ רק בפעם הראשונה שהדף מפוענח ..

B-) B-) ת-ו-ד-ה! :-D


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

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