webForumDet fria alternativet

Popup och formulär

1 svar · 310 visningar · startad av Asa

AsaMedlem sedan dec. 20011 860 inlägg
#1

Hade denna kod förrut för att infoga en smiley men då låg smileysarna på samma sida som formuläret:

<script>
function klistra(textEl) {
	if (textEl.createTextRange)
	textEl.caretPos = document.selection.createRange().duplicate();
	textE1 = (document.all) ? document.selection.createRange().text : window.getSelection();
}

function htmlin(textEl,tagStart,tagEnd){
if(textEl.selectionStart) { // NS
selStart = textEl.selectionStart;
selEnd = textEl.selectionEnd; 
selText = textEl.value.substr( selStart, selEnd-selStart );
textEl.value = textEl.value.substr(0, selStart) + tagStart + selText + tagEnd + textEl.value.substr(selEnd);
return;
}

if (textEl.createTextRange && textEl.caretPos){
var caretPos = textEl.caretPos;
if(caretPos.text.charAt(caretPos.text.length - 1) == ' '){
caretPos.text = tagStart + ' ' + textE1 + tagEnd;
} else {
caretPos.text = tagStart + ' ' + textE1 + tagEnd;
}
document.db.info.focus();
klistra(textEl);
}
}
</script>

<%For i = 1 To 5%>
  <a href="javascript:void(0)" onclick="htmlin(db.info,' [smiley_<%=i%>]', ' ');"><img src="/gfx/emoticons/<%=i%>.gif" border="0" alt="[smiley_<%=i%>]"></a>
<%Next%>

Nu har jag lagt mina smileys i en popupruta och använder denna kod:

<script>
function smiley(s){
  if (window.opener){
    window.opener.document.forms["<%=Request.QueryString("form")%>"].elements["<%=Request.QueryString("falt")%>"].value += s;
  }
}
</script>

<%For i = 1 To AntalSmiley%>
	<a href="#" onClick="smiley('[smiley_<%=i%>]');"><img src="/gfx/emoticons/<%=i%>.gif" border="0"></a>
<%Next%>

Behöver nu hjälp att på nåt vis bygga inop dessa funktioner. Den övre funktionen infogade smileysen där markören var men den nedre lägger smileysen sist i formuläret. Inget bra.

Hoppas någon kan hjälpa mig med detta då jag inte är duktig på javascript!

Peter SMedlem sedan dec. 20025 483 inlägg
#2

Om du har htmlin() och klistra() på den sida som öppnar popupen:

function smiley(s){
 if (window.opener){
  window.opener.htmlin(window.opener.document.db.info, s, ' ');
 }
}
129 ms totalt · 3 externa anrop · v20260731065814-full.30151723
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
127 ms — hämta tråd, inlägg och bilagor (db)