webForumDet fria alternativet

Jag eller IE som är kinkig?

JavaScript

10 svar · 332 visningar · startad av Kim

Medlem sedan jan. 20007 697 inlägg
Frågan#1

Jag har ett formulär med en massa fält och när man lämnar textfälten så ska en kontroll utföras direkt. Allt jag vill till en början är ju att få funktionen att köras med någon enkel debug-kod. Var ligger felet?

Det så oerhört enkla scriptet:

<SCRIPT LANGUAGE="JavaScript1.2">

function checkData(villkor=0) {
  if(villkor!=0) {
    alert('¡HOLA!');
  }
}

</SCRIPT>

Formuläret:

  <tr>
    <td width="250" class="collector" valign="top">
      FÖRETAGSNUMMER
    </td>
    <td width="30" valign="top">
      <b>0</b>
    </td>
    <td width="150" valign="top" colspan="2">
      <input name="K1" onBlur="javascript: checkData()" value="26059" type="text" size="12" style="border: 1px solid black; font-size: 10px; font-family: verdana, arial; text-align: right;" DISABLED>
    </td>
  </tr>

  <tr>
    <td width="250" class="collector">
      Antal lönegrundande montörstimmar, totalsumma
    </td>
    <td width="30">
      <b>1</b>
    </td>
    <td width="150">
      <input name="K2" onBlur="javascript: checkData()" value="16712" type="text" size="12" style="border: 1px solid black; font-size: 10px; font-family: verdana, arial; text-align: right;">
    </td>
    <td width="50">
    </td>
  </tr>

Men när jag laddar sidan så får jag att det fel på raden

      <input name="K2" onBlur="javascript: checkData()" value="16712" type="text" size="12" style="border: 1px solid black; font-size: 10px; font-family: verdana, arial; text-align: right;">

och får meddelandet att "Ett objekt förväntas". Varför? Det lär ju vara något jättesimpelt som jag bara inte har upptäckt.

Medlem sedan juli 2000836 inlägg
#2

Hej.

Det heter Javascript inte Java script...

Men du kan ta bort det helt, eftersom "onBlur" triggar händelsen.

input name="K2" onBlur="checkData()" ...

/ J

Medlem sedan jan. 20007 697 inlägg
#3

Jaja, att det blev java script är mindre viktigt eftersom det inte står i min kod, utan det kom bara med när jag klistrade in det här på wF.
Men tyvärr, det fungerar inte utan det heller, och det bör inte spela någon roll då felet ligger i att "ett objekt förväntas", vad nu det betyder... :o

Medlem sedan juli 2000836 inlägg
#4

Du skickar ju inte med något värde till funktionen och sp blir det väl konstigt när du säger "checkData(villkor=0)".

Prova detta:

<html>
<head>
<SCRIPT LANGUAGE="JavaScript1.2">

function checkData(villkor) {
  if(villkor!=0) {
    alert('¡HOLA!');
  }
}

</SCRIPT>
</head>

<table>
<tr>
    <td width="250" class="collector" valign="top">
      FÖRETAGSNUMMER
    </td>
    <td width="30" valign="top">
      <b>0</b>
    </td>
    <td width="150" valign="top" colspan="2">
      <input name="K1" onBlur="checkData(1)" value="26059" type="text" size="12" style="border: 1px solid black; font-size: 10px; font-family: verdana, arial; text-align: right;" DISABLED>
    </td>
  </tr>

  <tr>
    <td width="250" class="collector">
      Antal lönegrundande montörstimmar, totalsumma
    </td>
    <td width="30">
      <b>1</b>
    </td>
    <td width="150">
      <input name="K2" onBlur="checkData(1)" value="16712" type="text" size="12" style="border: 1px solid black; font-size: 10px; font-family: verdana, arial; text-align: right;">
    </td>
    <td width="50">
    </td>
  </tr>
</tabel>
Medlem sedan jan. 20007 697 inlägg
#5

Men det ska väl inte spela någon roll heller? :q
Skriver man function funktion(villkor=0) så betyder väl det att villkor inte behöver vara satt utan att det blir 0 annars? Eller är jag helt ute och cyklar?

Medlem sedan juli 2000836 inlägg
#6

Jag förstår kanske inte vad du är ute efter...
Om du vill sätta ett värde till en variabel gör du det lätast inne i funktionen:
function aha(){ variabel="x" }
om du vill skicka ett värde till en funktion gör du det lättast typ:
function aha(variabel){ alert(variabel) }

javascript: aha("x");

Medlem sedan jan. 20007 697 inlägg
#7

Men du, vad säger JavaScript-tolken om jag deklarerar att det ska finnas med en variabel, men att den sen inte finns med när jag anropar funktionen?

Medlem sedan juli 2000836 inlägg
#8

"men lille vän" :e jag väger 0,1 ton...

Den borde inte säga nånt'...

Medlem sedan juni 20008 205 inlägg
#9

Det går inte att ange defaultvärden för argument. Du får göra något sådant här:

function quux(flarb){
    if (arguments.length == 0)
        flarb = 0;
    if (flarb != 0)
        makeItHappen();
}
Medlem sedan jan. 20007 697 inlägg
#10

Nu ser det ut så här:

<SCRIPT LANGUAGE="JavaScript">
function check_Data(villkor) {
alert('XXX');
}
</SCRIPT>

<input name="K2" onBlur="check_Data('BLA BLA')" value="{FVALUE}" type="text" size="12">

Vad är fel här? Jag får ju fortfarande att "ett objekt saknas". :o

Medlem sedan jan. 20007 697 inlägg
#11

Stolpskottet Kim...

... vet nu vad som händer om man placerar ett javascript inuti en style-tagg. :o

268 ms totalt · 4 externa anrop · v20260731065814-full.a51de22e
129 ms — deklarationer (db)
0 ms — hämta statistik (cache)
136 ms — hämta tråd, inlägg och bilagor (db)
127 ms — ändringar (db)