+ Cevap Yaz
3 sonuçtan 1 ile 3 arası gösteriliyor

Konu: formu submit edince explorer kapatma hatası veriyor

  1. #1
    Cevizci
    Üyelik Tarihi
    03/2006
    Mesaj
    73

    formu submit edince explorer kapatma hatası veriyor

    slm arkadaşlar.
    formumda 6 tane textarea var ve bu textareaların hepsini sadece tek bir editörden düzeltmeye çalıştım.Yani kullanıcı hangi textareaya ya tıkladıysa kodlar o textareaya ekleniyor. Editor olarak smf nin javascript kodlarını kullandım. ve bu kodları kendimce düzenledim.Fakat her textarea ya bişeyler yazdıktan sonra ve editörden bişeyler ekledikten sonra formu gönder dediğimde explorer kapatma hatası veriyor.(bu hatayı verinceye kadar galiba çok büyük bi hata yapıyom. )Ancak mozillada hiçbir sorun yok.Arkadaşlar kodları aşağıda veriyorum.bakabilir misiniz?
    Kod:
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-9" />
    <script  language="javascript" type="text/javascript">
    var m="";
    function storeCaret(text)
    {
            // Only bother if it will be useful.
            if (typeof(text.createTextRange) != "undefined")
                    text.caretPos = document.selection.createRange().duplicate();
    }
    
    
    // Surrounds the selected text with text1 and text2.
    function surroundText(text1, text2, textarea)
    {
    if (m!="" ){
            // Can a text range be created?
            if (typeof(textarea.caretPos) != "undefined" && textarea.createTextRange)
            {
                    var caretPos = textarea.caretPos, temp_length = caretPos.text.length;
    
                    caretPos.text = caretPos.text.charAt(caretPos.text.length - 1) == ' ' ? text1 + caretPos.text + text2 + ' ' : text1 + caretPos.text + text2;
    
                    if (temp_length == 0)
                    {
                            caretPos.moveStart("character", -text2.length);
                            caretPos.moveEnd("character", -text2.length);
                            caretPos.select();
                    }
                    else
                            textarea.focus(caretPos);
            }
            // Mozilla text range wrap.
            else if (typeof(textarea.selectionStart) != "undefined")
            {
                    var begin = textarea.value.substr(0, textarea.selectionStart);
                    var selection = textarea.value.substr(textarea.selectionStart, textarea.selectionEnd - textarea.selectionStart);
                    var end = textarea.value.substr(textarea.selectionEnd);
                    var newCursorPos = textarea.selectionStart;
                    var scrollPos = textarea.scrollTop;
    
                    textarea.value = begin + text1 + selection + text2 + end;
    
                    if (textarea.setSelectionRange)
                    {
                            if (selection.length == 0)
                                    textarea.setSelectionRange(newCursorPos + text1.length, newCursorPos + text1.length);
                            else
                                    textarea.setSelectionRange(newCursorPos, newCursorPos + text1.length + selection.length + text2.length);
                            textarea.focus();
                    }
                    textarea.scrollTop = scrollPos;
            }
            // Just put them on the end, then.
            else
            {
                    textarea.value += text1 + text2;
                    textarea.focus(textarea.value.length - 1);
            }
    
    }
    else {
    alert("Lütfen üzerinde islem yapilacak bir textarea seçin...");
    }
    }
    
    function textfocus1(oEvent){
    var oEvent = (oEvent)? oEvent : event;
    var hangi =(oEvent.target)? oEvent.target : oEvent.srcElement;
    var hangitext=hangi.name;
    m="document.forms.sform."+hangitext;
    //alert(m);
    }
    
    
    </script>
    </head>
    <body>
    <br>
    <table width="600"  border=0 align="center" cellpadding="0" cellspacing="0">
    <form name="sform" action="sekle.html" method="POST" >
    <tr>
      <td colspan="2" class="anabaslik">&nbsp;</td>
    </tr>
    <tr><td class="metin"></td>
    <td align="center" valign="bottom">&nbsp;&nbsp;<a href="javascript:void(0);" onClick="surroundText('', '', eval(m) ); return false;">bold</a>
    &nbsp;&nbsp;<a href="javascript:void(0);" onClick="surroundText('', '', eval(m) ); return false;">italik</a>
    
    
    &nbsp;&nbsp;
    <a href="javascript:void(0);" onClick="surroundText('', '', eval(m)); return false;">altıçizili</a>
    
    &nbsp;&nbsp;
    
    <a href="javascript:void(0);" onClick="surroundText('[sup]', '[/sup]', eval(m)); return false;">üst karekter </a></td>
    </tr>
    <tr><td width="120"  align=right class="metin" >&nbsp;</td>
    <td width="495" align="left" valign="top" >&nbsp;&nbsp;
      <textarea name="gsoru" cols="70" rows="3" class="editor" id="gsoru"  onSelect="storeCaret(this);" onChange="storeCaret(this);" onClick="storeCaret(this);textfocus1(arguments[0]);" onKeyUp="storeCaret(this);" ></textarea></td>
    </tr>
    
    <tr>
      <td align=right class="metin">&nbsp;</td>
      <td align="left" >&nbsp;&nbsp;<textarea name="ga" cols="70" rows="2" class="editor" id="ga"  onSelect="storeCaret(this);" onChange="storeCaret(this);" onClick="storeCaret(this);textfocus1(arguments[0]);" onKeyUp="storeCaret(this);" ></textarea></tr>
    <tr>
      <td  align=right class="metin">&nbsp;</td>
      <td align="left" >&nbsp;&nbsp;<textarea name="gb" cols="70" rows="2" class="editor" id="gb"  onSelect="storeCaret(this);" onChange="storeCaret(this);" onClick="storeCaret(this);textfocus1(arguments[0]);" onKeyUp="storeCaret(this);" ></textarea></td>
    </tr>
    <tr>
      <td align=right class="metin">&nbsp;</td>
      <td align="left" >&nbsp;
        <textarea name="gc" cols="70" class="editor" id="gc"  onFocus="textfocus()" onSelect="storeCaret(this);" onChange="storeCaret(this);" onClick="storeCaret(this);textfocus1(arguments[0]);" onKeyUp="storeCaret(this);"></textarea></td>
    </tr>
    <tr>
      <td  align=right class="metin">&nbsp;</td>
      <td align="left" >&nbsp;&nbsp;<textarea name="gd" cols="70" rows="2" class="editor" id="gd"  onSelect="storeCaret(this);" onChange="storeCaret(this);" onClick="storeCaret(this);textfocus1(arguments[0]);" onKeyUp="storeCaret(this);"></textarea></td>
    </tr>
    <tr>
      <td  align=right class="metin">&nbsp;</td>
      <td align="left" >&nbsp;&nbsp;<textarea name="gee" cols="70" rows="2" class="editor" id="gee"  onSelect="storeCaret(this);" onChange="storeCaret(this);" onClick="storeCaret(this);textfocus1(arguments[0]);" onKeyUp="storeCaret(this);"></textarea></td>
    </tr>
    <tr>
      <td class="metin" align="right">&nbsp;</td>
      <td align="left">&nbsp;&nbsp;</td></tr>
    <tr>
      <td colspan="2" align="center" class="ver_9_kirmizi"><input name="reset" type=reset class="butont" value="Temizle">
        <input type="submit" name="Submit" value="Kaydet"></td>
    
    </form>
    </table>
    </body>
    </html>
    

  2. #2
    Cevizci
    Üyelik Tarihi
    03/2006
    Mesaj
    73

    arkadaşlar yok mu bunun bir çözümü acaba?

  3. #3
    Üye sendetiklat Adlı Üyenin Profil Grafiği
    Üyelik Tarihi
    06/2008
    Mesaj
    51

    Bu iki fonksiyon firefox ve operada güzel çalışıyor ama ie6 da çalışmıyor. Düzeltebilecek ya da elinde daha iyi bir fonksiyon olan var mı?

    Kod:
    // Replaces the currently selected text with the passed text.
    
    function replaceText(text, textarea)
    
    {
    
        // Attempt to create a text range (IE).
    
        if (typeof(textarea.caretPos) != \"undefined\" && textarea.createTextRange)
    
        {
    
            var caretPos = textarea.caretPos;
    
    
    
            caretPos.text = caretPos.text.charAt(caretPos.text.length - 1) == ' ' ? text + ' ' : text;
    
            caretPos.select();
    
        }
    
        // Mozilla text range replace.
    
        else if (typeof(textarea.selectionStart) != \"undefined\")
    
        {
    
            var begin = textarea.value.substr(0, textarea.selectionStart);
    
            var end = textarea.value.substr(textarea.selectionEnd);
    
            var scrollPos = textarea.scrollTop;
    
    
    
            textarea.value = begin + text + end;
    
    
    
            if (textarea.setSelectionRange)
    
            {
    
                textarea.focus();
    
                textarea.setSelectionRange(begin.length + text.length, begin.length + text.length);
    
            }
    
            textarea.scrollTop = scrollPos;
    
        }
    
        // Just put it on the end.
    
        else
    
        {
    
            textarea.value += text;
    
            textarea.focus(textarea.value.length - 1);
    
        }
    
    }
    
    
    
    // Surrounds the selected text with text1 and text2.
    
    function surroundText(text1, text2, textarea)
    
    {
    
        // Can a text range be created?
    
        if (typeof(textarea.caretPos) != \"undefined\" && textarea.createTextRange)
    
        {
    
            var caretPos = textarea.caretPos, temp_length = caretPos.text.length;
    
    
    
            caretPos.text = caretPos.text.charAt(caretPos.text.length - 1) == ' ' ? text1 + caretPos.text + text2 + ' ' : text1 + caretPos.text + text2;
    
    
    
            if (temp_length == 0)
    
            {
    
                caretPos.moveStart(\"character\", -text2.length);
    
                caretPos.moveEnd(\"character\", -text2.length);
    
                caretPos.select();
    
            }
    
            else
    
                textarea.focus(caretPos);
    
        }
    
        // Mozilla text range wrap.
    
        else if (typeof(textarea.selectionStart) != \"undefined\")
    
        {
    
            var begin = textarea.value.substr(0, textarea.selectionStart);
    
            var selection = textarea.value.substr(textarea.selectionStart, textarea.selectionEnd - textarea.selectionStart);
    
            var end = textarea.value.substr(textarea.selectionEnd);
    
            var newCursorPos = textarea.selectionStart;
    
            var scrollPos = textarea.scrollTop;
    
    
    
            textarea.value = begin + text1 + selection + text2 + end;
    
    
    
            if (textarea.setSelectionRange)
    
            {
    
                if (selection.length == 0)
    
                    textarea.setSelectionRange(newCursorPos + text1.length, newCursorPos + text1.length);
    
                else
    
                    textarea.setSelectionRange(newCursorPos, newCursorPos + text1.length + selection.length + text2.length);
    
                textarea.focus();
    
            }
    
            textarea.scrollTop = scrollPos;
    
        }
    
        // Just put them on the end, then.
    
        else
    
        {
    
            textarea.value += text1 + text2;
    
            textarea.focus(textarea.value.length - 1);
    
        }
    
    }
    

+ Cevap Yaz

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

     

Benzer Konular

  1. formu link ile submit
    By mbunal in forum Javascript / DHTML / Ajax
    Cevap: 2
    En Son Mesaj: 18/02/2007, 17:23
  2. form submit uyarırı Internet Explorer tarayıcısında çalışmıyor
    By aredhelrim in forum Javascript / DHTML / Ajax
    Cevap: 5
    En Son Mesaj: 24/01/2007, 00:02
  3. Cevap: 4
    En Son Mesaj: 12/12/2006, 04:16
  4. win98 de internet explorer sürekli hata veriyor
    By baslangic in forum Internet
    Cevap: 4
    En Son Mesaj: 10/12/2006, 13:28
  5. Formu gönderdikten sonra submit buttonunu kitlemek...
    By cappytoi in forum Javascript / DHTML / Ajax
    Cevap: 3
    En Son Mesaj: 17/01/2005, 13:21

Bookmarks

Mesaj Yazma Hakları

  • Yeni mesajgöndermezsiniz
  • Cevap yazamazsınız
  • Dosya ekleyemezsiniz
  • Mesajınızı düzenleyemezsiniz