henkzMedlem sedan apr. 2002183 inlägg Formuläret nedan fungerar när man skriver och trycker på Enter knappen.
Dock inte div med bilden.
Behöver hjälp med två saker:
1. Skulle vilja att det även går att klicka på bilden för skickning av formuläret.
2. Om man trycker shift+enter ska det bli radbyte.
Någon som kan hjälpa mig i rätt väg?
<form name="insertus">
<textarea id="msg" name="msg" rows="2" onKeyDown="if(event.keyCode==13) makeRequest('chatt_save.asp?chattid=<%=chattid%>&msg='+this.value+'&rnd='+Math.random());" style="overflow:auto;width:100%;height:40px;"></textarea>
<div style="width:102px;height:69px;cursor:hand;" onKeyDown="if(event.keyCode==13) makeRequest('chatt_save.asp?chattid=<%=chattid%>&msg='+this.value+'&rnd='+Math.random());">
<img src="design/bigsubmit.jpg" width="102" height="68" alt="" border="0" >
</div>
</form>
Ska inte vara så svårt, skapa först en variabel som håller reda på om shift är nertryckt sedan shiftar du mellan true/false med den variabeln.... ex:
<script type="text/javascript">
var ShiftIn = 0;
</script>
<textarea id="msg" name="msg" rows="2" onkeyup="if (event.keyCode==16) ShiftIn = 0;" onKeyDown="if (event.keyCode==16) ShiftIn = 1;if((event.keyCode==13) && (ShiftIn == 0)) makeRequest('chatt_save.asp?chattid=<%=chattid%>&msg='+this.value+'&rnd='+Math.random());" style="overflow:auto;width:100%;height:40px;"></textarea>
tror den bör funka, har inte testat men så funkar vl principen iallafall tror dock att mac kan vara kinkig när det gäller keycode 16, nån läsare har jag för mig krånglar, mest troligt safari.
sedan till få bilden att skicka så lägg till detta i img-taggen
onclick="makeRequest('chatt_save.asp?chattid=<%=chattid%>&msg='+document.getElementById('msg').value+'&rnd='+Math.random());"
du kan också göra en länk om du hellre vill...
Inget testat men som sagt bör funka :)
event.shiftKey gör jobbet också, det buggar i Firefox v1 - v1.5 eller något sånt... resultatet blir då alltid true om jag minns rätt.
henkzMedlem sedan apr. 2002183 inlägg Tack för hjälpen!
Funkade nästan perfekt.
När jag gör radbrytning med shift+enter, hur kan jag plocka ut denna radbrytning?
jag tänkte köra en replace:
msg = Replace(msg, vbCrLf, "<br>")
Detta fungerar inte. Hur kan jag lösa detta?
henkzMedlem sedan apr. 2002183 inlägg Behöver fortfarande lite hjälp med detta.
Kan man inte på nått vis få till detta? eller är det tekniskt omöjligt?
colioneMedlem sedan juni 20014 421 inlägg Prova med att bara göra en replace på vbCr eller vbLf
henkzMedlem sedan apr. 2002183 inlägg Fungerar tyvärr inte. Har provat det.
vet inte exakt vad du vill göra men
prova något sådant:
msg = msg.replace(/\r\n/, "<br />");
lek lite med regex så får du nog till det precis som du vill ha ;)
henkzMedlem sedan apr. 2002183 inlägg Det hela är tänkt att fungera som MSN.
När man trycker "shift+enter" blir det radbyte och vanlig "enter" skickas formuläret.
Det hela fungerar på sidan, men när jag ska få radbrytningen ersatt med <br> fungerar det inte. Det blir ingen radbrytning alls.
Har försökt erätta med vbCr, vbLf, vbcrlf , det löser inte problemet.
.asp ex: msg = Replace(msg, vbcrlf, "<br>")
Sätter jag in mönstret: "/\r\n/, "<br />" blir texten hej:
h
e
j
Räcker det att ändra lite i regexp mönstret?
colioneMedlem sedan juni 20014 421 inlägg set r=new regexp
r.pattern="[\r\n]{1,}"
r.global=true
r.multiline=true
f="Hej"&vbcrlf&"jag heter"&vbcr&"bertil"&vblf&"nilsson"
m=r.replace(f,"<br>")
henkzMedlem sedan apr. 2002183 inlägg Tack!
Men det fungerar ändå inte. Blir inga radbrytningar.
Kan felet ligga här:
<script type="text/javascript">
var ShiftIn = 0;
</script>
<textarea id="msg" name="msg" rows="2" onkeyup="if (event.keyCode==16) ShiftIn = 0;" onKeyDown="if (event.keyCode==16) ShiftIn = 1;if((event.keyCode==13) && (ShiftIn == 0)) makeRequest('chatt_save.asp?chattid=<%=chattid%>&msg='+this.value+'&rnd='+Math.random());" style="overflow:auto;width:100%;height:40px;"></textarea>
colioneMedlem sedan juni 20014 421 inlägg Hmm, har du lust att skapa en sida som spottar ut den inskickade datan omslutet med pre-taggar som vi kan kontrollera på?
henkzMedlem sedan apr. 2002183 inlägg Det ger inte så mycket info det.