OputresMedlem sedan feb. 2004333 inlägg Allå!
Jag hittade nedanstående script som skapar tre knappar med å, ä och ö som vid knapptryck infogar motsvarande bokstav i ett formulärfält (t) i ett formulär (f). Jag har nedanstående kod i en inc-fil som jag länkar in brevid formuläret. Detta fungerar utmärkt.
Problemet är att jag på en sida har TRE formulär och är i behov av tre uppsättningar med å, ä och ö-knappar. Jag har provat lite olika varianter men alla infogningar hamnar i det tredje (och sista) formuläret.
Jag antar att jag bör ha tre separata inc-filer där jag byter namn på vissa nyckelord, alltså från "nyckelord" till "nyckelord2" och "nyckelord3", i de olika inc-filerna. Uppenbarligen ändrar jag inte på rätt nyckelord då alla knapptryck ändå bara hamnar i det tredje formuläret. Vilka ord är det egentligen jag skall ändra?
<script type="text/javascript">
var cPos,
fObj,
ieC = Boolean(document.selection && document.selection.createRange);
function sC() {
cPos = document.selection.createRange().duplicate();
}
window.onload = function() {
fObj = document.forms["f"].elements["t"];
if (ieC) {
fObj.onclick = function() { sC(); }
fObj.onkeyup = function() { sC(); }
fObj.onselect = function() { sC(); }
}
}
function inschar(c){
if (ieC){
if (typeof cPos != "undefined"){
cPos.text = c;
} else {
fObj.value += c;
}
} else if (typeof window.HTMLTextAreaElement != "undefined"){
fObj.value = fObj.value.substring(0, fObj.selectionStart)
+ c
+ fObj.value.substring(fObj.selectionEnd);
}
}
</script>
<input type="button" value="å" onclick="inschar('å')">
<input type="button" value="ä" onclick="inschar('ä')">
<input type="button" value="ö" onclick="inschar('ö')">
Peter SMedlem sedan dec. 20025 483 inlägg Tjena!
Exempel:
<script type="text/javascript">
var cPos,
fObj1,
fObj2,
fObj3,
ieC = Boolean(document.selection && document.selection.createRange);
function sC() {
cPos = document.selection.createRange().duplicate();
}
window.onload = function() {
fObj1 = document.forms["f"].elements["t1"],
fObj2 = document.forms["g"].elements["t2"],
fObj3 = document.forms["h"].elements["t3"];
if (ieC) {
fObj1.onclick = fObj2.onclick = fObj3.onclick = function() { sC(); }
fObj1.onkeyup = fObj2.onkeyup = fObj3.onkeyup = function() { sC(); }
fObj1.onselect = fObj2.onselect = fObj3.onselect = function() { sC(); }
}
}
function inschar(c,o){
if (ieC){
if (typeof cPos != "undefined"){
cPos.text = c;
} else {
o.value += c;
}
} else if (typeof window.HTMLTextAreaElement != "undefined"){
o.value = o.value.substring(0, o.selectionStart)
+ c
+ o.value.substring(o.selectionEnd);
}
}
</script>
<form name="f">
<textarea name="t1"></textarea>
<input type="button" value="å" onclick="inschar('å',this.form.elements['t1'])">
<input type="button" value="ä" onclick="inschar('ä',this.form.elements['t1'])">
<input type="button" value="ö" onclick="inschar('ö',this.form.elements['t1'])">
</form>
<form name="g">
<textarea name="t2"></textarea>
<input type="button" value="å" onclick="inschar('å',this.form.elements['t2'])">
<input type="button" value="ä" onclick="inschar('ä',this.form.elements['t2'])">
<input type="button" value="ö" onclick="inschar('ö',this.form.elements['t2'])">
</form>
<form name="h">
<textarea name="t3"></textarea>
<input type="button" value="å" onclick="inschar('å',this.form.elements['t3'])">
<input type="button" value="ä" onclick="inschar('ä',this.form.elements['t3'])">
<input type="button" value="ö" onclick="inschar('ö',this.form.elements['t3'])">
</form>
OputresMedlem sedan feb. 2004333 inlägg Allå! Tyvärr hamnar å, ä, ö i slutet av texten. I ovanstående exempel hamnar den där markören står. Finns det något smidigt sätt att fixa till detta i ditt exempel?
Peter SMedlem sedan dec. 20025 483 inlägg För mig hamnar bokstäverna där markören står.
OputresMedlem sedan feb. 2004333 inlägg När jag kopierade rakt av gjorde dem det. Då skall vi bara leta upp var det är jag schabblar till det när jag anpassar det till min sida :)