我有一个PHP表单,我想显示或隐藏某些字段,这取决于我在下拉菜单中选择的内容。 我的代码如下:
$(document).ready(function() {
$('div.pupname').hide();
$('div.pupnid').hide();
if ($("#perpetrator").val == "1") {
$('div.pupname').hide();
$('div.pupid').show();
else {
$('div.pupid').hide();
$('div.pupname').show();
}
$("#perpetrator").change(function() {
if ($("#perpetrator").val() == "1") {
$('div.pupname').hide();
$('div.pupid').show();
else {
$('div.pupid').hide();
$('div.pupname').show();
}
});
});
我现在想要一个多行块,我使用php生成,所以我可以生成div作为 pupid1 , pupid2 等和字段{{1作为一个数组。我已经尝试了几种方法来访问数组,但无法获得任何工作。我认为他跟随可能沿着正确的行访问数组的元素,但它没有做任何事情。
$m_perpetrator
加
以下是HTML的摘录
if ($("#m_perpetrator[1]").val == "1") {
$('div.pupname1').show();
$('div.pupid1').hide();
}
else {
$('div.pupid1').show();
$('div.pupname1').hide();
}
所以基本上这是一个多行形式,如果选择了Current,则每行都会显示pupil_id,如果选择了其他任何内容,那么我想显示瞳孔名称。 为了处理输入,我使用php运行数组m_perpetrator [] 吉姆
答案 0 :(得分:-1)
不完全确定你需要什么。你有多个具有相同id m_perpetrator的元素吗?
使用类而不是你应该这样做
if ($($(".m_perpetrator")[1]).val() == "1") {
$('div.pupname1').show();
$('div.pupid1').hide();
}
else {
$('div.pupid1').show();
$('div.pupname1').hide();
}
否则html中的m_perpetrator是什么?
答案 1 :(得分:-1)
您不能在id属性中使用“[”或“]”。我建议你输出一个像这样的列表元素:
<ul id="whatevers">
<li><input name="whatever1" /></li>
<li><input name="whatever2" /></li>
<li><input name="whatever3" /></li>
<ul>
然后您可以使用jquery访问它们:
var ws = $("#whatevers input");
for(var i=0; i< ws.length; ++i){
ws.eq(i).doSomething();
}