嗨我有一个动态复选框的JQuery问题,我不知道我错过了什么,如果有人可以帮助我欣赏这里是我的代码
$('input[name="id_especieganado[]"]').each(function(e){
//$('[name="id_especieganado[]"]').click(function() {
var $this = $(this);
var id_jurisdiccion = new Array();
var jurisdicciones = "";
//id_jurisdiccion = $("#id_jurisdiccion[]");
var i = 0;
$(this).bind('click',function(){
//$('input[name="id_especieganado[]"]').each(function(){
if($(this).is(':checked'))
{
id_jurisdiccion.push($(this).val());
jurisdicciones += "id_jurisdiccion[]="+$(this).val()+"&";
$("#buscarrfc").val("Hola");
}
})
//if($("#id_jurisdiccion[]").attr("checked")==true)
//alert($("input[name='id_jurisdiccion[]']").val());
$.ajax({
url:"funciones_jquery2.php",
type: "POST",
dataType: 'html',
data: jurisdicciones,
success: function(datos){
$("#listamunicipios").html(datos);
//alert(datos);
}
})
//})
});
动态复选框我是从Postgres DB和PHP
的数据库中写的这是嵌入在类
中的代码复选框看起来不错
private function especies_ganado()
{
$database = $this->conexion_db();
$resultado = pg_query($database, "SELECT *FROM especies_ganado;");
echo "<tr><td>";
while($row = pg_fetch_array($resultado))
{
echo "<input type=\"checkbox\" name=\"id_especieganado[]\" id=\"id_especieganado[]\" value=\"$row[id_especieganado]\"> $row[especie_ganado]<BR>";
}
echo "</td></tr>";
}
答案 0 :(得分:0)
首先,$.ajax()
调用位于.each()
函数体中,因此您为每个复选框调用它(在页面加载时),但我认为您希望在发送数据时发送数据每个复选框都被点击。将它们放在点击处理程序中。
其次,在发送数据之前,您必须收集click事件处理程序中的每个复选框值。
// for every checkbox, add a click handler (no need for each anymore)
$('input[name="id_especieganado[]"]').bind('click',function() {
// create an object for post data
var post_data = {'id_jurisdiccion': new Array()};
// collect the values from checked checkboxes
$('input[name="id_especieganado[]"]:checked')).each(function() {
post_data['id_jurisdiccion'].push($(this).val());
});
// send the data
$.ajax({
url:"funciones_jquery2.php",
type: "POST",
dataType: 'html',
data: post_data,
success: function(datos) {
$("#listamunicipios").html(datos);
}
});
});