Bu ajax modül ile sorun yaşıyorsanız!

2 Cevap php

ben bu javascript, onun sayfayı yeniden ve formu göndermeden ile değil sorun yaşıyorum. !

var xmlHttp

function GetXmlHttpObject(){
  var objXMLHttp=null;
  if (window.XMLHttpRequest){
    objXMLHttp=new XMLHttpRequest();
  }else if (window.ActiveXObject){ 
    objXMLHttp=new ActiveXObject("Microsoft.XMLHTTP");
  }
  return objXMLHttp
}

function ajax_module()
{
  xmlHttp=GetXmlHttpObject();
  if (xmlHttp==null){
    alert ("Browser does not support HTTP Request");
    return
  }
  xmlHttp.open('POST', 'save.php');
  xmlHttp.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded; charset=UTF-8');
  xmlHttp.send('user='+document.form1.user1.value+'&text='+document.form1.text1.value);

  document.form1.test1.value = '';
  document.form1.test1.focus();
}

HTML

<form name="form1" method="POST" onsubmit="ajax_module(); return false;">
<textarea name='text1'></textarea> 
<input type='hidden' name='user1' value='$user' />
<input type="submit" name="submit" value="submit" />
</form>

2 Cevap

Hiçbir hata içinde meydana geldiğini çift kontrol ajax_module. Eğer varsa, bu return false almak asla ve onsubmit durmayacak.

Eğer varsa Kundakçı da mevcut benzer bir hata ayıklayıcı, ajax_module içinde breakpointler. Aksi takdirde, add try / catch sağ içeride ajax_module:

function ajax_module() {
  try {
    /* place what you already have here */
  } catch (e) {
    alert(e);
  }
}

Ayrıca metin girişleri genellikle işe yorumladı. Bu, şu anda kodlama değil textareas izin verilmesi satırsonlarının, bağlı olabilir.

Değil sebep oluyor ya da olsun, her durumda değerlerini kodlamak için muhtemelen iyi bir fikir.

xmlHttp.send('user=' + encodeURIComponent(document.form1.user1.value) + 
            '&text=' + encodeURIComponent(document.form1.text1.value));

Daha fazla bilgi için, check out http://www.w3schools.com/jsref/jsref_encodeuricomponent.asp.

Olsa da, her sayfada anlatılan karakter farklılıkları unutmayın - Alternatif escape olurdu.

Belki de kullanıcı girişi eksik kendine kapanan etiketi? Bir JavaScript hatası var mı?