Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Split a [ w name
Forum PHP.pl > Forum > Po stronie przeglądarki > JavaScript
icemanwlkp
Witam, mam kłopot z funkcją split pod IE 11 .

Komunikat IE : Nie można pobrać właściwości ?split? dla niezdefiniowanego lub pustego odwołania.

var options = cInp[i].getAttribute('name').split("[");

  1. for ($i=0; $i<1; $i++)
  2. {
  3. echo "<td align=left valign=top> <input name=\"ED_wartosc_wn[$i]\" id=\"ED_wartosc_wn[$i]\" value=\"\" style=\"width:70px;\"> </td>";
  4. }


Problem ,że w name mam [] , czy to są niedozwolone znaki w nazwach ?

Co ciekawe IE 8 i 9 nie widza problemów.
sowiq
Nie, znaki [] zdecydowanie są poprawne w nazwie inputa.

Jedyne co Ci mogę doradzić to debugowanie. Zamień swój kod na coś takiego:

Kod
alert(i);
alert(cInp[i]);
alert(cInp[i].getAttribute('name'));
alert(cInp[i].getAttribute('name').split("["));

var options = cInp[i].getAttribute('name').split("[");
alert(options);


Wtedy może dowiesz się gdzie leży błąd.
icemanwlkp
Każdy alert się wyświetla ,

alert(cInp[i].getAttribute('name').split("["));

to wyświetla ED_wartosc_wn,0]

czyli podzielił to czemu nie może przypisać ?
w tym

var options = cInp[i].getAttribute('name').split("[");
sowiq
Czy te linijki wyświetlają to samo?

Kod
alert(cInp[i].getAttribute('name').split("["));
// tutaj przypisanie
alert(options);


Jeśli tak, to błąd leży w innym miejscu.
icemanwlkp
Dokładnie bo na końcu mam input button bez name , stary ie widać olewał , nowy dostaje tam null i dziczeje , dodałem warunek i sprawdzam przed split czy nie jest null i śmiga .
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.