| U bevindt zich > Oude forum > ASP > Algemeen (ASP) > verwijderen uit array |
| Gepost door G_asp gepost op 12/05/2005 om 16:48 |
heyla,
ik zit dus met een probleempje ivm het verwijderen uit een array
Ik heb een form waarin ik in de bovenste regel adressen kan ingeven, als ik dan op knop toevoegen klik worden deze adressen toegevoegd aan een kadertje. in dit kadertje kunt ge ook een adres verwijderen ofwel bewerken. as ge op verwijderen klikt wordt dit geselecteerde adres verwijderd uit het kadertje. als ge op bewerken klikt wordt dit adres vanboven terug ingevuld zoda ge da wa kunt wijzigen.
Nu heb ik bij het verwijderen een probleem, ik krijg dat niet verwijderd uit de array, wel uit het kadertje... Als ik een adres verwijder, is het weg uit het kadertje, klik ik daarna op bewerken bij een volgend adres geeft hij het adres dat ik net verwijderd had aangezien dit nog in de array staat, dus hij geeft dan in de bovenste regel het verkeerde adres dat ik wil bewerken
Iemand een suggestie? Ik zal even mijn functie voor het verwijderen hier plakken:
function verwijderadres() { if ( (document.formsubadres.adresid.length!=0) && (document.formsubadres.adresid.selectedIndex > 0)){ document.formsubadres.adresid[document.formsubadres.adresid.selectedIndex]=null alert("gegevens worden verwijderd")} toonAantalAdressen() }
met deze gegevens werk ik:
adresgegevens[aantaladressen]=new Array(); adresgegevens[aantaladressen][0]=document.formsubadres.chkActief.value; adresgegevens[aantaladressen][1]=document.formsubadres.adrestype.value; adresgegevens[aantaladressen][2]=document.formsubadres.straat.value; adresgegevens[aantaladressen][3]=document.formsubadres.nummer.value; adresgegevens[aantaladressen][4]=document.formsubadres.bus.value; adresgegevens[aantaladressen][5]=document.formsubadres.gemeente.value; adresgegevens[aantaladressen][6]=document.formsubadres.postcode.value;
alvast bedankt
greetz
G_asp |
| Gepost door Ronneke gepost op 12/05/2005 om 19:08 |
Hoi,
Op deze pagina staat een voorbeeld uitgelegd om een item uit een array te verwijderen. Ge moet het maar aanpassen met uw variabelnamen.
Succes |
| Gepost door G_asp gepost op 13/05/2005 om 09:33 |
heyla
merci voor dat voorbeeld
ik werk in asp, geen asp.net ma gewone asp
kan ik dat daar ook zo gebruiken?
mvg
G_asp |
| Gepost door G_asp gepost op 13/05/2005 om 10:08 |
ik heb dit er nu bijgezet voor het verwijderen
for (aantaladressen = 1 to adresgegevens.length) adresgegevens[aantaladressen-1][0] = adresgegevens[aantaladressen][0] adresgegevens[aantaladressen-1][1] = adresgegevens[aantaladressen][1] adresgegevens[aantaladressen-1][2] = adresgegevens[aantaladressen][2] adresgegevens[aantaladressen-1][3] = adresgegevens[aantaladressen][3] adresgegevens[aantaladressen-1][4] = adresgegevens[aantaladressen][4] adresgegevens[aantaladressen-1][5] = adresgegevens[aantaladressen][5] adresgegevens[aantaladressen-1][6] = adresgegevens[aantaladressen][6] Next
maar dit wil hij blijkbaar niet doen of geeft conflicten
zelfs als hij er nog niet in komt, ik kan nu geen adressen meer toevoegen aan mn kader, weet iemand wat het probleem is?
da onderdeel zou zo rap mogelijk afmoeten...
alvast bedankt
mvg
G_asp |
| Gepost door Ronneke gepost op 13/05/2005 om 11:44 |
Hoi
Probeer eens het volgende
Code:
For i = document.formsubadres.adresid.selectedIndex To aantaladressen - 1 adresgegevens[0] = adresgegevens[i + 1][0] adresgegevens[1] = adresgegevens[i + 1][1] adresgegevens[2] = adresgegevens[i + 1][2] adresgegevens[3] = adresgegevens[i + 1][3] adresgegevens[4] = adresgegevens[i + 1][4] adresgegevens[5] = adresgegevens[i + 1][5] adresgegevens[6] = adresgegevens[i + 1][6] Next |
Groeten |
| Gepost door G_asp gepost op 20/05/2005 om 11:48 |
ik zit dus nog steeds in de knoei met het verwijderen van gegevens uit array
ik zal hier even mijn functie posten dan hebt ge n beter zicht
function verwijderadres() { if ( (document.form.adresid.length!=0) && (document.form.adresid.selectedIndex > 0)){ document.form.adresid[document.form.adresid.selectedIndex]=null For i = document.formsubadres.adresid.selectedIndex To aantaladressen - 1 { adresgegevens[0] = adresgegevens[i + 1][0] adresgegevens[1] = adresgegevens[i + 1][1] adresgegevens[2] = adresgegevens[i + 1][2] adresgegevens[3] = adresgegevens[i + 1][3] adresgegevens[4] = adresgegevens[i + 1][4] adresgegevens[5] = adresgegevens[i + 1][5] adresgegevens[6] = adresgegevens[i + 1][6] aantaladressen = aantaladressen - 1 } Next
toonAantalAdressen() alert("gegevens worden verwijderd")} }
mvg
G_asp |
| Gepost door Ronneke gepost op 20/05/2005 om 12:13 |
Hoi G_asp
Sorry, foutje van mij. Probeer even het volgende:
Code:
function verwijderadres() { if ( (document.form.adresid.length!=0) && (document.form.adresid.selectedIndex > 0)){ For i = document.form.adresid.selectedIndex To aantaladressen - 1 { adresgegevens[0] = adresgegevens[i + 1][0] adresgegevens[1] = adresgegevens[i + 1][1] adresgegevens[2] = adresgegevens[i + 1][2] adresgegevens[3] = adresgegevens[i + 1][3] adresgegevens[4] = adresgegevens[i + 1][4] adresgegevens[5] = adresgegevens[i + 1][5] adresgegevens[6] = adresgegevens[i + 1][6] aantaladressen = aantaladressen - 1 } Next
toonAantalAdressen() alert("gegevens worden verwijderd")} } |
Groeten |
| Gepost door G_asp gepost op 20/05/2005 om 12:28 |
heyla ronneke, k heb deze code eens geprobeerd
ik kan mijn file uitvoeren maar linksonder in de balk staat dan "fouten op de pagina" as k daar op klik zegt m ';' wordt verwacht
en hij verwijst naar de regel function verwijderadres() 
raar geval, wat zou het probleem kunnen zijn?
alvast bedankt voor de moeite
G_asp |
| Gepost door Ronneke gepost op 20/05/2005 om 13:18 |
Hoi G_asp
Hmmm en waarom staat die aantaladressen = aantaladressen - 1 binnen uw for next loop?
Zet eens die na de next.
Groeten |
| Gepost door G_asp gepost op 20/05/2005 om 13:21 |
ik heb nu die regel eens na de next gezet en nu geeft die nog steeds die melding dat hij ';' verwacht
mvg
G_asp |
| Gepost door Ronneke gepost op 20/05/2005 om 13:26 |
hmmm, werkt ge misschien in C# ?
|
| Gepost door G_asp gepost op 20/05/2005 om 13:34 |
nee, ik werk in de gewone asp, in dreamweaver

en da meemaken op ne vrijdag... 
mvg
G_asp |
| Gepost door G_asp gepost op 20/05/2005 om 14:15 |
moet da mss ne movenext zijn ipv ne next?
Ik weet het nie, Tis maar een gok ;-)
mvg
G_asp |
| Gepost door Ronneke gepost op 20/05/2005 om 14:42 |
Oei, ik zie juist dat de "[ i ]" (maar zonder de spaties) gewoon vervangen is door een italic druk  . Even mijn laatste code terug aanpassen.
Code:
if ( (document.form.adresid.length!=0) && (document.form.adresid.selectedIndex > 0)){
document.form.adresid[document.form.adresid.selectedIndex]=null
For j = document.form.adresid.selectedIndex To aantaladressen - 1
{
adresgegevens[j][0] = adresgegevens[j + 1][0]
adresgegevens[j][1] = adresgegevens[j + 1][1]
adresgegevens[j][2] = adresgegevens[j + 1][2]
adresgegevens[j][3] = adresgegevens[j + 1][3]
adresgegevens[j][4] = adresgegevens[j + 1][4]
adresgegevens[j][5] = adresgegevens[j + 1][5]
adresgegevens[j][6] = adresgegevens[j + 1][6]
}
Next
aantaladressen = aantaladressen - 1
toonAantalAdressen() alert("gegevens worden verwijderd")} } |
Moest hij nog een foutmelding geven betreffende die ";": ik weet dat er
andere talen zijn zoals C#, C/C++ en javascript waar elke
instructielijn op een ";" moet eindigen. Voor dreamweaver weet ik het
niet.
dus bijv: adresgegevens[j][5] = adresgegevens[j + 1][5];
Groeten
|
| Gepost door G_asp gepost op 20/05/2005 om 15:05 |
heyla ron,
ik heb het net geprobeerd maar hij geeft nog steeds dezelfde melding..
Ik heb ook al geprobeerd met adresgegevens[j][5] = adresgegevens[j + 1][5]; maar tzelfde resultaat 
toch zeer fel bedankt voor al uw moeite
mvg
G_asp |