我这里有两个剧本。第一个脚本用于XMLHttpRequest,另一个用于ajax函数用于自动完成。但是当我尝试在一个页面中使用此脚本时,XMLHttpRequest无效。我的一个问题是如果XMLHttpRequest不起作用,另一个也不起作用。任何帮助都会受到欢迎。
<select name="cat_code" id="cat_code" type="text" onchange="GetChangedValue(this.value)">
</select>
<script type="text/javascript">
function GetChangedValue(str) {
if (str==""){
document.getElementById("item_code").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("item_code").value = xmlhttp.responseText;
}
}
xmlhttp.open("GET","getajax.php?q="+str,true);
xmlhttp.send();
}
</script>
<script>
function GetChangedValue (val) {
$( "#items" ).autocomplete({
selectFirst: true,
source: function(request, response) {
$.getJSON('autocomplete.php?selected='+val, { items: request.term }, response);
}
});
}
</script>
答案 0 :(得分:0)
您需要具有不同的功能名称。或者你可以在两种情况下使用jquery的匿名函数,如下所示:
$("#cat_code").change(function() { your code } );
或者使用on
函数,如果元素动态出现:
$(body).on( "change", "#cat_code", function() { your code } )
答案 1 :(得分:0)
function selCatCodeChange(selVal) {
GetChangedValue1(selVal);
GetChangedValue2(selVal);
}
function GetChangedValue1(str) {
if (str==""){
document.getElementById("item_code").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("item_code").value = xmlhttp.responseText;
}
}
xmlhttp.open("GET","getajax.php?q="+str,true);
xmlhttp.send();
}
function GetChangedValue2 (val) {
$( "#items" ).autocomplete({
selectFirst: true,
source: function(request, response) {
$.getJSON('autocomplete.php?selected='+val, { items: request.term }, response);
}
});
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<select name="cat_code" id="cat_code" type="text" onchange="selCatCodeChange(this.value)">
</select>
自动完成的插件要么没有正确构建,要么没有设置.autocomplete