Creo que te estás dejando el caso de que la url ya sea así:
http://10.1.17.254/web/pagina.php?uno=1
En ese caso tendríamos que añadir un &.
Tenlo en cuenta!
Y lo que te estaba pasando es que mirabas a ver si estaba '?' desde atrás, pero empezando desde la posición cero!
Mira, en esta llamada busco '?' desde la posición 10:
Código:
"http://10.1.17.254/web/pagina.php?parametro=23".lastIndexOf('?', 10);
// con lo que estoy buscando '?' en este fragmento:
"http://10.1.17.254/web/pagina.php?parametro=23"
<--------+
No encuentra, da -1
Código:
"http://10.1.17.254/web/pagina.php?parametro=23".lastIndexOf('?', 30);
// con lo que estoy buscando '?' en este fragmento:
"http://10.1.17.254/web/pagina.php?parametro=23"
<----------------------------+
No encuentra, da -1
Código:
"http://10.1.17.254/web/pagina.php?parametro=23".lastIndexOf('?', 40);
// con lo que estoy buscando '?' en este fragmento:
"http://10.1.17.254/web/pagina.php?parametro=23"
<--------------------------------------+
Encuentra, da 33.
Espero que así sí
lastIndexOf() busca hacia el principio (atrás) y
indexOf() busca hacia el final (adelante).
Un saludo.