如何检查收音机1单选按钮何时被检查,第二个单选按钮也被检查它做了一件事,但如果没有,它会做另一件事

时间:2015-05-06 11:54:50

标签: javascript php jquery html

我有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/

1 个答案:

答案 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();
    }
});