CruellaDeVille Skrevet 31. oktober 2007 Del Skrevet 31. oktober 2007 (endret) Ja, jeg har googlet men jeg skjønner ikke hva jeg får ut. Jeg kan serverside-scripting og er bortimot grønn på javascript. Altså. Jeg har et tekstfelt hvor en skal kunne sette inn bilder ved hjelp av html img-tag. Jeg har et hovedvindu med en lenke til en popup for opplasting av en fil (til dette bruker jeg php). Anyway. Når verdien i inputfeltet er på plass skal filnavnet og img-tag overføres til parent window. Jeg klarer å overføre hele stien (D:\Bluetooth-utvekslingsmappe\Bilde023.jpg) men jeg vil bare ha bilde023.jpg istedet for. koden min <script type="text/javascript"> function setCaret (textObj) { if (textObj.createTextRange) { textObj.caretPos = document.selection.createRange().duplicate(); } } function insertAtCaret (textObj, textFieldValue) { if(document.all){ if (textObj.createTextRange && textObj.caretPos) { var caretPos = textObj.caretPos; caretPos.text = caretPos.text.charAt(caretPos.text.length - 1) == ' ' ?textFieldValue + ' ' : textFieldValue; }else{ textObj.value = textFieldValue; } }else{ if(textObj.setSelectionRange){ var rangeStart = textObj.selectionStart; var rangeEnd = textObj.selectionEnd; var tempStr1 = textObj.value.substring(0,rangeStart); var tempStr2 = textObj.value.substring(rangeEnd); // her vil jeg ha inn filename slik: // var filename = find_filename(textFieldValue) // og erstatte linjen under med denne // textObj.value = tempStr1 + filename+ tempStr2; // Men da går alt i stå :_( textObj.value = tempStr1 + textFieldValue + tempStr2; }else{ alert("This version of Mozilla based browser does not support setSelectionRange"); } } opener.document.outputForm.msgLine.value = textObj.value; window.close(); } /** Denne fungerer ikke og jeg skjønner ikke hvorfor */ function find_filename(filePath){ var lastPathDelimiter = filePath.lastIndexOf("\\"); return toLowere(filePath.substring(lastPathDelimiter+1, filePath.length)); } </script> html hvis noen trenger denne <form id="form1" action="" onsubmit="" method="post" enctype="multipart/form-data"> <p> <input type="file" name="textfield" style="width:220px;"/> <br/> <input type="button" value="Sett inn bilde" onclick="insertAtCaret(opener.document.outputForm.msgLine,this.form.textfield.value);"/> </p> </form> Det er funksjonen find_filename jeg ikke forstår. Når skriptet kjøres får jeg noe som ligner en evig løkke (dvs siden lastes i all evighet) Noen? Endret 31. oktober 2007 av CruellaDeVille Lenke til kommentar
CruellaDeVille Skrevet 31. oktober 2007 Forfatter Del Skrevet 31. oktober 2007 hvis andre er interessert: function find_filename(filePath){ var lastPathDelimiter = filePath.lastIndexOf("\\"); if(lastPathDelimiter<0) lastPathDelimiter=filePath.lastIndexOf("/"); return filePath.substring(lastPathDelimiter+1).toLowerCase(); } Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå