我有一个选择下拉列表,我想做的是在提交表单后,通过一次选择将两个值设置到db字段中。我的下拉列表中有值A1,A2,A3,这些值已输入到db字段A中。我要做的是选择A:A1,A2或A3时,另一个字段B应该得到值B1,B2或B3因此,即当A = A1时,B = B1,当A = A2时,B = B2,当A = A3时,B = B3。
我尝试使用以下代码建立该代码,但是发生的是,当我为A选择A1时,A获得A1,但当我保存/提交表单时B不会更改值。
如果我再次保存该表单而没有对A进行任何更改,则A = A1并从其值更改为B = B1,这是正确的,但仅当我保存该表单而不更改选择时,它才获得正确的值为一个。
现在,如果我选择A = A2,那么B不会再次更改值,它仍然是B1(B = B1)。如果我选择A = A3,那么B变为B2(B = B2),依此类推,我想你明白了.....这样,B可以说“后面的选择” .....
这是我的代码:
<?php if( $this->item->A == 'A1'){ echo ($this->item->A); echo ($this->item->B); ?>
<select name="A"><option value="A1" selected="selected">A1</option><option value="A2">A2</option><option value="A3">A3</option></select>
<input type="text" name="B" id="B" style="display:none;" value=B1>
<?php echo ($this->item->B); }
elseif( $this->item->A == 'A2') { echo ($this->item->A); echo ($this->item->B); ?>
<select name="A"><option value="A1">A1</option><option value="A2" selected="selected">A2</option><option value="A3">A3</option></select>
<input type="text" name="B" id="B" style="display:none;" value=B2>
<?php echo ($this->item->B); }
elseif( $this->item->A == 'A3') { echo ($this->item->A); echo ($this->item->B); ?>
<select name="A"><option value="A1">A1</option><option value="A2">A2</option><option value="A3" selected="selected">A3</option></select>
<input type="text" name="B" id="B" style="display:none;" value=B3>
<?php echo ($this->item->B); }
else {?>
<select name="A"><option value="A1">A1</option><option value="A2" >A2</option><option value="A3">A3</option></select>
<?php } ?>
问题:当我选择A:A1,A2或A3时,当我保存表单时B会一致地得到值B1,B2或B3怎么可能?即当A = A1则B = B1,当A = A2则B = B2,当A = A3则B = B3?
我需要使用JavaScript,jQuery吗?
我不熟悉这些,并且如您所知,我不是程序员。
您能告诉我我应该使用的代码吗?
请帮忙.....
最佳答案
你可以这样
$('[name=A]').change(function(){
$('#B').val($(this).val());
});
关于javascript - 根据所选值设置输入值,并使用php存储到数据库中,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/42292322/