我有2个单选按钮,1个textarea和1个数字区域(type =“number”输入并不知道该怎么称呼它。)
if(mysql_num_rows($canview) > 0) { ?>
<!-- Questions on return send all this to database then to place where dept. heads can see it-->
<div id = "returnform" >
<form action="" method="post">
<h4>Are any of the item(s) missing?</h4>
Yes<input type ="radio" name ="missing" id = "missing1" value = "Yes" required>
No<input type ="radio" name ="missing" id = "missing2" value = "No" >
<div class = "lossnum">
<input type="number" name="lossnum" id = "lossnum" placeholder="0">
</div>
<h4>Was every item put back/plugged in correctly?</h4>
Yes<input type ="radio" name ="putback" id = "putback1" value = "Yes" required>
No<input type ="radio" name ="putback" id = "putback2" value = "No">
<div class = "returncomments">
<h4>what happened?</h4>
<textarea name="comments"></textarea>
</div>
</div>
<input name="item_id" type="hidden" value="<?php echo $item->get_id(); ?>" />
<h4>Are you sure you want to return these <?php echo $item->get_name(); ?>? </h4>
<input type="submit" id="submit" name="submit" value="Return" />
<?php
}elseif(mysql_num_rows($canview) == 0 && $success == false) { ?>
<input name="item_id" type="hidden" value="<?php echo $item->get_id(); ?>" />
我已经让lostnum(数字计数器)正常工作,我需要做的是让textarea只显示当单选按钮1等于是或单选按钮2等于否或者两者都在发生,现在如果你单击单选按钮1显示为是,但如果你然后将其更改为否它不会消失所以我需要更改它。
$(document).ready(function () {
$(".lossnum").hide();
$(".comments").hide();
$(".returncomments").hide();
$(".commentup").hide();
$("#missing1").click(function () {
$(".lossnum").show();
$(".comments").show();
$(".returncomments").show();
});
$("#missing2").click(function () {
$(".lossnum").hide();
if($('#putback2').prop('checked', value)){
$(".comments").show();
$(".returncomments").show();
}
else{
$(".comments").hide();
$(".returncomments").hide();
}
});
$("#putback2").click(function () {
$(".comments").show();
$(".returncomments").show();
});
$("#putback1").click(function () {
if($('#missing2').prop('checked', value)){
$(".comments").hide();
$(".returncomments").hide();
}
else{
$(".comments").show();
$(".returncomments").show();
}
}); });
如果你们知道无论如何要做到这一点,只有当选择某些单选按钮时才需要或检查提交(即当没有你需要填写textarea和/或当缺少是肯定的时候你必须这样做同样的)
这是一个JSfiddle for it http://jsfiddle.net/SameB/L7et15du/
答案 0 :(得分:0)
您需要在单选按钮的单击处理程序中更正if
条件。您正在使用$('#putback2').prop('checked', value)
设置单选按钮值,但需要检查是否已选中,请参阅下面的代码
$("#missing2").click(function () {
$(".lossnum").hide();
if($('#putback2').is(':checked')){//correct here
$(".comments").show();
$(".returncomments").show();
}
else{
$(".comments").hide();
$(".returncomments").hide();
}
});
同样需要做putback1
$("#putback1").click(function () {
if($('#missing2').is(':checked')){
$(".comments").hide();
$(".returncomments").hide();
}
else{
$(".comments").show();
$(".returncomments").show();
}
});