第一个帖子!和一个java的noob*随便!
我知道有很多关于这个话题的帖子,我已经读过了…我就是解决不了。
我有一个非常简单的HTML表单,有静态输入和动态创建的输入。
HTML自动完成
<script type="text/javascript">
// Funcion Autocomplete de jQuery para buscar los clientes y los productos en el input con id "buscar" y clase "buscar_prod"
$().ready(function() {
$("#buscar").autocomplete("get_client_list.php", {
width: 260,
matchContains: true,
selectFirst: false
});
});
$().ready(function() {
$(".buscar_prod").autocomplete("get_product_list.php", {
width: 260,
matchContains: true,
selectFirst: false
});
});
</script>
HTML表单
<form method="post" action="add_order.php">
Cliente: <input type="text" name="cliente" id="buscar">
<div id="dynamicInput">
Referencia y cantidad <br><input type="text" class="buscar_prod" name="input_referencia[]"><input type="text" name="input_cantidad[]">
</div>
<input type="button" value="Adicionar otra referencia" onClick="addInput('dynamicInput','order');">
<input type="submit" name="guardar" value="Guardar" />
null
AddInput.js
var counter = 1; function addInput(divName,category){ switch(category){ case "order": var newdiv = document.createElement('div'); newdiv.innerHTML = "Referencias y cantidad " + (counter + 1) + "
"; document.getElementById(divName).appendChild(newdiv); counter++; break; case "product": var newdiv = document.createElement('div'); newdiv.innerHTML = "Componente y cantidad " + (counter + 1) + "
"; document.getElementById(divName).appendChild(newdiv); counter++; break; case "component": var newdiv = document.createElement('div'); newdiv.innerHTML = "Proveedor y Precio " + (counter + 1) + "
"; document.getElementById(divName).appendChild(newdiv); counter++; break; } }
所以问题很简单…给定这些代码,我如何在每个新生成的输入中实现自动完成。
事先多谢。
您可以在将元素添加到DOM之后附加autocomplete,如下所示:
$(newdiv).autocomplete("get_client_list.php", {
width: 260,
matchContains: true,
selectFirst: false
});
您可以根据您的switch-case语句调用特定的自动完成代码。