【发布时间】:2015-05-06 16:47:30
【问题描述】:
<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_time 。如果我将函数名称更改为 set_time1,则自动完成功能不起作用。如何解决这个问题? .我需要在一个页面中使用两个自动完成功能。
【问题讨论】:
-
我在您的脚本中看不到
set_time或set_time1函数。但是你声明了两次同名的函数function set_item,第二次覆盖第一个。所以第一个不能被调用。 -
实际上两个脚本具有相同的功能 set_item 。现在告诉我如何更改它。总共有两个函数 set_time 。这就是脚本无法正常工作的原因
-
这不是“两个脚本”,因为它们都是同一个页面的一部分,所以它们都是同一个脚本。两个具有相同名称的函数不能在 javascript 中工作,因为第二个定义将覆盖第一个。请给我看“set_time”功能,因为你确认它在这里,我确认我找不到它。
-
我的问题和这个一样。stackoverflow.com/questions/27389241/…
-
很好,一个副本。如果您阅读它,我的答案是完全一样的。
标签: javascript jquery ajax autocomplete jquery-autocomplete