23-08-2008, 16:05
|
|
|
חבר מתאריך: 23.08.08
הודעות: 8
|
|
בעיה בבניית מחשבון javascript
אני מנסה ליצור מעין מחשבון ב-javascript שיופיע בצורת חשבונייה כלומר הדף יכיל textarea שבו המשתמש יכתוב את החישובים שהוא רוצה לעשות וכשהוא יצא מהשדה או ילחץ על Enter החישוב יתבצע.
את כל זה הצלחתי כבר לעשות .
הבעיה שלי היא שאני רוצה שבעקבות לחיצה על פעולה חישובית (/,*,-,+ׂ תיהיה ירידת שורה בtextarea כך שהחישוב יראה מסודר יותר.
עד עכשיו הצלחתי לגרום לירידת שורה בעזרת מקשים אחרים במקלדת אבל כשאני מנסה לעשות את אותו הדבר עם המקשים של פעולות בחשבון (וכל החלק הימני של המקלדת בכלל ) זה לא עובד.
קוד:
<html>
<head>
<script language="javascript">
function ptor()
{
b=document.a.name.value;
calculate(b);
if(calculate(b)==false)
alert("úå ìà çå÷é");
else
b=eval(b);
document.a.name.value=b;
}
function calculate(b)
{
for(i=0;i<=b.length;i++)
{
var a=b.charAt(i)
if(a=="1"||a=="0"||a=="2"||a=="3"||a=="4"||a=="5"||a=="6"||a=="7"||a=="8"||a=="9"||a=="+"||a=="-"||a=="*"||a=="/"||a==" ")
return true;
else
return false;
}
}
function check(a)
{
b=document.a.name.value;
for(i=a;i<=100;i++)
{
var a=b.charAt(i)
if(a=="+"||a=="-"||a=="*"||a=="/")
{
b=b+"\n"
document.a.name.value=b;
a=i
}
}
setTimeout("check(0)", 2000);
}
</script>
<title>îçùáåï
</title>
</head>
<body>
<body dir="rtl" >
<body bgcolor="#1CA2EA">
<font face="arial">
<h1 align="center">?????</h1>
<br>
??? ???? ?????
<br>
<form name="a">
<table cellpadding="12"><tr>
<td>???:</td>
<td><textarea name="name" onKeypRess='if(event.keyCode==106) document.a.name.value=document.a.name.value+"\n" ;' onKeyDown="if (window.event.keyCode==13)ptor();" onblur="ptor()" rows="5"> </textarea></td>
</tr>
</table>
</form>
</body>
</html>
בקוד ששלחתי יש עוד סקיפט שיצרתי בהתחלה בשביל לפתור את הבעיה בצורה עקיפה אך הוא לא אפקטיבי.
תודה לעוזרים.
|