Javascript 自动完成ajax不起作用 函数autocomplet1(){ var min_length=0;//显示自动完成的最小字符数 var关键字=$('#select01').val(); 如果(关键字.length>=最小长度){ $.ajax({ url:'barcode.php', 键入:“POST”, 数据:{关键字:关键字}, 成功:功能(数据){ $('#条形码01').show(); $('#barcode01').html(数据); } }); }否则{ $(“#条形码01”).hide(); } } 功能集\项目(项目2){ $('#select01').val(第2项); var customer=$(“#customer”).val(); $.post(“销售/添加”,{“数据[销售][项目]”:项目2,“数据[销售][客户\电话]”:客户},功能(数据){ $('#details3').html(数据); $(“#select01”).val(“”); }); //隐藏命题列表 $(“#条形码01”).hide(); } //自动完成:每次更改文本时都会执行此函数 函数自动完成(){ var min_length=0;//显示自动完成的最小字符数 var关键字=$(“#客户”).val(); 如果(关键字.length>=最小长度){ $.ajax({ url:'abc.php', 键入:“POST”, 数据:{关键字:关键字}, 成功:功能(数据){ $(“#国家/地区列表_id”).show(); $('country#list_id').html(数据); } }); }否则{ $(“#国家/地区列表_id”).hide(); } } 功能集\项目(项目1){ $('客户').val(第1项); $.post(“销售/添加”,{“数据[销售][客户]”:item1},函数(数据){ $('#details').html(数据); }); //隐藏命题列表 $(“#国家/地区列表_id”).hide(); }
上面是一个自动完成脚本。两个脚本具有相同的函数设置时间。如果我将函数名更改为set_time1,则自动完成不起作用。如何解决这个问题。我需要在一个页面中使用两个autocomplete。好的,因为这很难在小评论中解释,所以我将在这里写下它 以剧本为例:Javascript 自动完成ajax不起作用 函数autocomplet1(){ var min_length=0;//显示自动完成的最小字符数 var关键字=$('#select01').val(); 如果(关键字.length>=最小长度){ $.ajax({ url:'barcode.php', 键入:“POST”, 数据:{关键字:关键字}, 成功:功能(数据){ $('#条形码01').show(); $('#barcode01').html(数据); } }); }否则{ $(“#条形码01”).hide(); } } 功能集\项目(项目2){ $('#select01').val(第2项); var customer=$(“#customer”).val(); $.post(“销售/添加”,{“数据[销售][项目]”:项目2,“数据[销售][客户\电话]”:客户},功能(数据){ $('#details3').html(数据); $(“#select01”).val(“”); }); //隐藏命题列表 $(“#条形码01”).hide(); } //自动完成:每次更改文本时都会执行此函数 函数自动完成(){ var min_length=0;//显示自动完成的最小字符数 var关键字=$(“#客户”).val(); 如果(关键字.length>=最小长度){ $.ajax({ url:'abc.php', 键入:“POST”, 数据:{关键字:关键字}, 成功:功能(数据){ $(“#国家/地区列表_id”).show(); $('country#list_id').html(数据); } }); }否则{ $(“#国家/地区列表_id”).hide(); } } 功能集\项目(项目1){ $('客户').val(第1项); $.post(“销售/添加”,{“数据[销售][客户]”:item1},函数(数据){ $('#details').html(数据); }); //隐藏命题列表 $(“#国家/地区列表_id”).hide(); },javascript,jquery,ajax,autocomplete,jquery-autocomplete,Javascript,Jquery,Ajax,Autocomplete,Jquery Autocomplete,上面是一个自动完成脚本。两个脚本具有相同的函数设置时间。如果我将函数名更改为set_time1,则自动完成不起作用。如何解决这个问题。我需要在一个页面中使用两个autocomplete。好的,因为这很难在小评论中解释,所以我将在这里写下它 以剧本为例: <script> function autocomplet1() { var min_length = 0; // min caracters to display the autocomplete
<script>
function autocomplet1() {
var min_length = 0; // min caracters to display the autocomplete
var keyword = $('#select01').val();
if (keyword.length >= min_length) {
$.ajax({
url: 'barcode.php',
type: 'POST',
data: {keyword:keyword},
success:function(data){
$('#barcode01').show();
$('#barcode01').html(data);
}
});
} else {
$('#barcode01').hide();
}
}
function set_item(item2) {
$('#select01').val(item2);
var customer = $("#customer").val();
$.post("sales/add", {"data[Sales][item]": item2 ,"data[Sales][customer_phone]": customer }, function (data) {
$('#details3').html(data);
$("#select01").val('');
});
// hide proposition list
$('#barcode01').hide();
}
</script>
<script>
// autocomplet : this function will be executed every time we change the text
function autocomplet() {
var min_length = 0; // min caracters to display the autocomplete
var keyword = $('#customer').val();
if (keyword.length >= min_length) {
$.ajax({
url: 'abc.php',
type: 'POST',
data: {keyword:keyword},
success:function(data){
$('#country_list_id').show();
$('#country_list_id').html(data);
}
});
} else {
$('#country_list_id').hide();
}
}
function set_item(item1) {
$('#customer').val(item1);
$.post("sales/add", {"data[Sales][customer]": item1 }, function (data) {
$('#details').html(data);
});
// hide proposition list
$('#country_list_id').hide();
}
</script>
<div class="input_container">
<input type="text" id='customer' onkeyup="autocomplet()" name="data[Sales][customer]" class="input-small focused">
<ul id="country_list_id" style='height: 500px;'></ul></div></div>
<div class="content">
<div class="input_container">
<input type="text" id='select01' onkeyup="autocomplet1()" name="data[Sales][item]" class="input-small focused">
<ul id="barcode01" style='height: 500px;'></ul></div></div>
你认为会发生什么?会发出什么警报?
回答:“再见!”,因为第二个函数定义覆盖了第一个函数定义。你永远不会看到“你好!”警报
这是两个函数同名时发生的情况。你有两个同名的函数。将它们放在不同的
标记中不会改变任何东西,它仍然是相同的范围。我在脚本中看不到set\u time
或set\u time1
函数。但是,如果您声明两次具有相同名称的函数函数集\u item
,则第二次声明将覆盖第一次声明。所以第一个不能被调用。实际上两个脚本具有相同的函数集\项。现在告诉我如何改变它。。总共有两个功能集,即时间。这就是脚本不能正常工作的原因。它不是“两个脚本”,因为它都是同一页面的一部分,所以都是同一个脚本。两个同名函数无法在javascript中工作,因为第二个定义将覆盖第一个定义。请给我看“设置时间”功能,因为你确认它在这里,我确认我找不到它。我的问题与此相同。很好,一个副本。如果你读过的话,我的答案是完全一样的。再见警报正在显示。但我需要根据id显示。如果id为客户集,则项目功能不同。如果选择01 id,则设置项目功能不同。如何为此编写查询。编写两个函数并给它们一个不同的名称!我不知道如何更好地解释,是不是很难理解?对不起,我这里的论点已经没有了
function set_item(){
alert("Hello!");
}
function set_item(){
alert("Goodbye!");
}
set_item();