如何通过选择单选按钮选项来更改文本表单字段

时间:2018-07-12 12:14:07

标签: javascript php laravel

我有两个选项1-休假2-长期现在我想要的是当我从单选按钮中选择这些选项时,表单已填充并且表单具有以下字段:

1-季节 2-日期 3-每日 4周 5-每月

现在,当我选择长期值时,我想在弹出菜单中仅显示“每月”字段,如果我选择“休假”,则应该显示所有字段。

这些选项在我的html中

     <div class="m-b-10 m-t-10">

            <label class="radio-inline">
              <input type="radio" id="inlineCheckbox1" value="is_vacation" name="property_type" checked> Vacation
            </label>
            <label class="radio-inline">
              <input type="radio" id="inlineCheckbox2" value="is_long_term" name="property_type"> Long Term
            </label>

        </div>

和我的控制器

      if ($search == "vacationRental") {

            // $properties = Property::where('is_vacation', '=', 1)->get();
            $properties = Property::where('status', '=', 1)->where('is_vacation', '=', 1)->get();
            return view('admin.property.index')
                        ->with('properties', $properties)
                        ->with('seasons', $seasons);

        } elseif ($search == "longTerm") {

            // $properties = Property::where('is_long_term', '=', 1)->get();
            $properties = Property::where('status', '=', 1)->where('is_long_term', '=', 1)->get();
            return view('admin.property.index')
                        ->with('properties', $properties)
                        ->with('seasons', $seasons);

        }

我是否需要为此创建一个新视图,或者可以使用JS完成,我认为可以使用JS完成,但是我不知道如何执行此操作。需要您的帮助

我们将非常感谢您的帮助!

1 个答案:

答案 0 :(得分:0)

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>jQuery Show Hide Elements Using Radio Buttons</title>
<style type="text/css">
    .box{
        color: #fff;
        padding: 20px;
        display: none;
        margin-top: 20px;
    }
    .red{ background: #ff0000; }
    .green{ background: #228B22; }
    .blue{ background: #0000ff; }
    label{ margin-right: 15px; }
</style>
<script src="https://code.jquery.com/jquery-1.12.4.min.js"></script>
<script type="text/javascript">
$(document).ready(function(){
    $('input[type="radio"]').click(function(){
        var inputValue = $(this).attr("value");
        var targetBox = $("." + inputValue);
        $(".box").not(targetBox).hide();
        $(targetBox).show();
    });
});
</script>
</head>
<body>
    <div>
        <label><input type="radio" name="colorRadio" value="red"> red</label>
        <label><input type="radio" name="colorRadio" value="green"> green</label>
        <label><input type="radio" name="colorRadio" value="blue"> blue</label>
    </div>
    <div class="red box">You have selected <strong>red radio button</strong> so i am here</div>
    <div class="green box">You have selected <strong>green radio button</strong> so i am here</div>
    <div class="blue box">You have selected <strong>blue radio button</strong> so i am here</div>
</body>
</html>                            

这是您可以参考的示例示例