2011-07-21 53 views
0

我是新的jQuery和我必须做两个选择的动态形式,在一个选择我需要做的,如果用户选择选项让我们说B另一个选择出现,但如果他选择A然后它不显示,问题是,我可以向每个元素的形式,我做的形式为PHP,然后将变量传递给ID的所以它会是这样的:jQuery动态表单,如何通过动态标识获取值?

<select id="edocivil<?php echo $x ?>" class="textbox" name="edocivil<?php print $x; ?>" > 

$ X上的数外地的,我需要所以如果B检查显示了这些其他选择的是一个div来获得该字段的值,这是多么:

<div id="regimen<?php echo "$x"; ?>" style="display:none;"> 

的d我所做的是隐藏字段,值为$ x,所以我可以用jQuery获得它,但我无法做到这一点我需要帮助,我离开了jQuery脚本和隐藏字段谢谢。

$(document).ready(function(){ //asÌ es como se crean las funciones jQuery. solo cree 

var id_edo= $(this).next(".numero_id_edo").val(); 
alert(id_edo); 
$("#edocivil"+id_edo).change(function(){ //se ejecuta con el evento onChange 


var val = $("#edocivil"+id_edo).val() 

if(val =="B") 
{ 
    $("#regimen"+id_edo).show(); 
} 
else 
{ 
    $("#regimen"+id_edo).hide(); 
} 

});//change 
});//ready 

隐藏字段:

<input type="hidden" name="numero_id_edo" id="numero_id_edo" value="<?php echo $x; ?>" class="numero_id_edo"> 

我试图使它成为最易于理解的方式,我真的很新的这个堆栈溢出的

回答

1

确定如果我深知你可以做像这样,首先得到隐藏字段的value,使我们有$x

var $x = $("#numero_id_edo").val(); //here we get the value of hidden field or inother words $x 

现在在此基础上,我们可以得到下拉列表中选择的值

$("#edocivil"+$x).change(function(){ 

alert($(this).val()); 

}); 

编辑

假设你在页面上的多个隐藏字段,你可以得到这样

var idArr=[]; 

$("input:hidden").each(function(){ 

idArr.push($(this).val()); 
}); 

alert(idArr.length); 

for (v in idArr) 
{ 
alert(idArr[v]); 
} 
有值

看着这个小提琴希望你会得到这个想法http://jsfiddle.net/3nigma/hAcuF/1/

+0

谢谢,我试过了但它只给了我第一个值其他值不这样我只能显示第一个div和其他我不能 – apz2000

+0

好,所以你有多个隐藏的字段在页面??每个指的是现场号码? – Rafay

+0

是的,有x个字段已被x用户放在另一个页面上的合作伙伴的数量 – apz2000