我正在處理這段代碼以顯示客戶端列表,並且點擊它使用所選名稱和隱藏文本字段填充文本字段。JavaScript html不能在鉻上工作
HTML
<input type="hidden" id="id" value="" />
<input type="text" name="client" id="client" class="round full-width-input" value="Type a name..." onChange="searchClient()" onkeypress="this.onchange();" onpaste="this.onchange();" oninput="this.onchange();" onfocus="if(this.value=='Type a name...') {this.value=''}" onblur="if(this.value == ''){this.value='Type a name...'; document.getElementById('search_results').innerHTML = '';}" />
<label style="margin:0 0 0 1%"><i id="search_results"></i></label>
平變化它使用JavaScript調用PHP文件。
的Javascript
function searchClient()
{
var str = document.getElementById("client").value;
if (str == "")
{
document.getElementById("search_results").innerHTML = "";
return;
}
if (window.XMLHttpRequest)
{
// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp = new XMLHttpRequest();
}
else
{
// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
document.getElementById("search_results").innerHTML = xmlhttp.responseText;
}
}
xmlhttp.open("GET","search_client.php?name="+str,true);
xmlhttp.send();
}
PHP文件時返回列表,並填充標籤。以下是從PHP文件返回的內容
echo '<a onClick="selectClient('.$fullname.','.$row[0].')">
<tr><td class="cap">'.$fullname.'</td></tr></a>';
然後我可以點擊列表並再次調用javascript來填充文本字段。
的Javascript selectClient
function selectClient(name,id)
{
document.getElementById("id").value = id;
document.getElementById("client").value = name;
document.getElementById("search_results").innerHTML = "";
}
我的問題是: 這不是工作在Chrome,但工作得很好IE。 任何人都知道我在這裏錯過了什麼?
感謝您的幫助。
如果您使用的是jQuery,爲什麼要使用XMLHttpRequest的AJAX方法? – j08691