Bunun yerine bir metin kutusu bir etiket kullanarak ajax, güncelleyebilirsiniz?

4 Cevap php

Ben kutu aşağı bir damla değeri seçildikten sonra bir metin kutusu güncelleştirmek için ajax kullanıyorum. Belirli koşullar yerine getirildiği takdirde hiçbir mesaj olduğunda çöp görünüyor böylece Ancak, ben sadece, içinde / koymak metni güncelleştirin. Ben orada bir etiket olması çok daha iyi olacağını düşünüyordum, ama bu mümkün mü? I boş bir etiket var ve gerektiğinde sadece etiket metnini güncelleyebilir miyim?

Şerefe leddy

Edit:

Ben php kullanıyorum ve açılan aşağı kutusu seçildiğinde, ben (reports.php sayfa) bir mysql db sorgulama ediyorum - bunun sonucu ne bağlı olarak, ben metin kutusu güncelleştirmek veya değil karar verir:

function getHTTPObject(){
   if (window.ActiveXObject) return new ActiveXObject("Microsoft.XMLHTTP");
   else if (window.XMLHttpRequest) return new XMLHttpRequest();
   else {
	  alert("Your browser does not support AJAX.");
	  return null;
   }
}   

// Change the value of the outputText field
function setOutput(){
	if(httpObject.readyState == 4){
		document.getElementById('outputText').value = httpObject.responseText;
	}

}


function checkException()
{

	httpObject = getHTTPObject();
	if (httpObject != null)
	{	
		httpObject.open("GET", "reports.php?exceptions="
						+document.getElementById('exceptionsID').value+"&date1=" + document.getElementById('date1').value, true);
		httpObject.send(null);
		httpObject.onreadystatechange = setOutput;
	}
}

var httpObject = null;

textbox 'outputText' ve setoutput () fonksiyonu ayarlanır

Bu biraz daha iyi açıklar umuyoruz

Şerefe

4 Cevap

Böyle bir şey etiketin metnini değiştirmek gerekir.

// Change the value of the outputText field
function setOutput(){
        if(httpObject.readyState == 4){
                document.getElementById('outputText').innerHTML= httpObject.responseText;
        }

}

Ben sağlandı kodunu gösterecek benim özgün yazı güncellendi. Bu <label>, <div>, ya da <span> etiketlerini kullanarak varsayar

Eğer ASP.NET kullanarak konum varsayarsak, evet yapabilirsiniz. Etiketin Text özelliğini kullanarak.

Bir yayılma içine metin kutusu değiştirmek ve id aynı tutmak. Sonra yerine değeri innerHTML ayarlamak için kodu değiştirin:

// Change the value of the outputText field
function setOutput(){
        if(httpObject.readyState == 4){
                document.getElementById('outputText').innerHTML= httpObject.responseText;
        }

}

Bir metin olmadan bu işlemek için basit yolu, bir SPAN etiketi oluşturmak it "outputText" kimliği vermek, ve sonra bu gibi SPAN innerText değiştirmek için:

function setOutput() {
   if(httpObject.readyState == 4) {
       document.getElementById('outputText').innerText = httpObject.responseText;
   }
}

HTML içinde, böyle tanımlanmış Etiketi olacak:

<span id="outputText">Some default text here</span>

Tabii ki, SPAN bazı CSS stil iyi bir şey olabilir, ama bu başka bir zaman için başka bir mesele. Senin düzen ihtiyaçlarına bağlı olarak, bir DIV etiketi SPAN daha iyi olabilir.