【问题标题】:fill half form input fill on basis of another filled input根据另一个填充的输入填充半表单输入
【发布时间】:2018-03-08 17:19:12
【问题描述】:

我想为我的社会应用程序创建一个计费系统,在这个系统中,我想根据表单中的值动态生成几个字段。这意味着半表单将很少有关于我想要的数据的数据生成另一个字段。

例如:当我选择用户名时,我将有用户类型、平面编号、停车位值,现在如果用户类型是所有者/租户,我想特别收费。

我的代码是:

 <form class="form-horizontal" role="form" method="post" id="genbill">
            <div class="form-group">
              <label class="col-lg-3 control-label">Person Name:</label>
              <div class="col-lg-8">
                <select id="user_nm" name ="user_nm" class=" form-control"></select>
                <input type="hidden" name="email"  id="email" class="form-control" value="">
              </div>
            </div>
            <div class="form-group">
              <label class="col-lg-3 control-label">User Type:</label>
              <div class="col-lg-8">
               <input type="text" name="role"  id="role" class="form-control" value="">
                <!-- <select id="flatno" name ="flatno" class=" form-control"></select>  -->
              </div>
            </div>
            <div class="form-group">
              <label class="col-lg-3 control-label">Flat No.:</label>
              <div class="col-lg-8">
               <input type="text" name="flatno"  id="flatno" class="form-control" value="">
                <!-- <select id="flatno" name ="flatno" class=" form-control"></select>  -->
              </div>
            </div>
            <div class="form-group">
              <label class="col-lg-3 control-label">PAN No.:</label>
              <div class="col-lg-8">
               <input type="text" name="pan"  id="pan" class="form-control" value="">

              </div>
            </div>
            <div class="form-group">
              <label class="col-lg-3 control-label">Parking Slot.:</label>
              <div class="col-lg-8">
               <input type="text" name="parking"  id="parking" class="form-control" value="">
              </div>
            </div>
            <div id="chargeField">

            </div>
            <div class="form-group">
              <label class="col-lg-3 control-label">Bill Due Date:</label>
              <div class="col-lg-8" > 
                <select name="Duegroup" id="billdate"></select>
                </div>
                </div>
            <div class="form-group">
              <label class="col-lg-3 control-label">Bill Period:</label>
                 <div class="col-lg-8">
                 <select name="billgroup" id="daterange">
                 </select>  
                </div>
            </div>
            <div class="form-group">
              <label class="col-lg-3 control-label">Total:</label>
              <div class="col-lg-8"> 
              <input type="text" class="form-control" onfocus="findTotal()" name="total" id="total" value="" >
              </div>
            </div>
            <div class="form-group">
              <label class="col-md-3 control-label"></label>
              <div class="col-md-8">
                <input class="btn btn-primary" value="Save" type="submit" name="Add">
                <span></span>
                <input class="btn btn-default" value="Cancel" type="reset">
              </div>
            </div>
          </form>

在 usernm chnages 上填写输入

  $('#user_nm').on('change', function() {
        //alert( this.value );

        //var user_nm = document.getElementById('user_nm').value;
        var user_nm = this.value;
        var flat = document.getElementById('flatno');
        var email = document.getElementById('email');
        var pan = document.getElementById('pan');
        var role = document.getElementById('role');
        var park = document.getElementById('parking');
        //alert('nm'+user_nm);
        $.ajax({
            type: "post",
            url: "getFlatno.php",
            dataType: "json",
            data: { email: user_nm },
            success: function(data) {

                if (data.result == 1) {
                    flat.value = data.flat;
                    email.value = data.email;
                    pan.value = data.pan;
                    role.value = data.role;
                    park.value = data.parking;



                } else {
                    alert('failure');
                }
            }

        });
    })

检索费用字段

                $( "#parking" ).focusout(function() {

                        //  alert( "Handler for .focus() called." );

                        var email = document.getElementById('email').value;
                                var role = document.getElementById('role').value;
                                var park = document.getElementById('parking').value;

                                        alert(email);
                                        alert(role);
                                        alert(park);
                                                    $.ajax({
                                                                type: "post",
                                                                url: "getChargeAsperRole.php",
                                                                dataType: "json",
                                                                data:{
                                                                        email:email,
                                                                        role:role,
                                                                        park:park
                                                                },
                                                            success: function(data) {
                                                                    var html = ""; 
                                                                    alert('success');
                                                            $.each(data, function(i, item) {

                                                                                html = html + '<div class="form-group"><label class="col-lg-3 control-label">' + item.charge_title + ':</label><div class="col-lg-8"><input type="checkbox" name="charge_Arr[]" value= "' + item.charge_amt + '" class="checkValue" /><input  class="form-control"  id="field' + item.num + '" type="text" name="field' + item.num + '" value="' + item.charge_amt + '" readonly><input type="hidden" name="fieldid[]"  id="fieldid' + item.num + '" class="form-control" value="' + item.Id + '"></div></div>';
                                                                        });
                                                                        $("#chargeField").html(html);
                                                                }

                                                        });
                });

获取费用代码:

 if($_SERVER['REQUEST_METHOD']=='POST'){

        $email = $_POST['email'];
        $role =  $_POST['role'];
        $parking =  $_POST['park'] ;
        echo  $parking;

        if($role!='' && $parking!='' && $parking!=0){

            $sql = "SELECT c.charge_id,c.u_id,u.ID,u.role,b.charge_id,b.charge_title FROM `users` u ,`billing_charges` b ,`charge_applied` c where c.charge_id=b.charge_id and u.ID = c.u_id and u.role='$role' and parking_slot='$parking'"; 
            echo "one==".$sql;

        }elseif($role!='' && $parking=='' && $parking!=0){

            $sql = "SELECT c.charge_id,c.u_id,u.ID,u.role,b.charge_id,b.charge_title FROM `users` u ,`billing_charges` b ,`charge_applied` c where c.charge_id=b.charge_id and u.ID = c.u_id and u.role='$role'"; 
            echo "two==".$sql;

        }elseif($role!='' && $parking=='' && $parking!=0){

            $sql = "SELECT c.charge_id,c.u_id,u.ID,u.role,b.charge_id,b.charge_title FROM `users` u ,`billing_charges` b ,`charge_applied` c where c.charge_id=b.charge_id and u.ID = c.u_id and parking_slot='$parking'"; 
            echo "thiree==".$sql;

        }elseif($parking!='0'){

            $sql = "SELECT c.charge_id,c.u_id,u.ID,u.role,b.charge_id,b.charge_title FROM `users` u ,`billing_charges` b ,`charge_applied` c where c.charge_id=b.charge_id and u.ID = c.u_id"; 
            echo "four==".$sql;
        }else{
            echo "nkagg";
        }
       // $sql = "SELECT c.charge_id,c.u_id,u.ID,u.role,b.charge_id,b.charge_title FROM `users` u ,`billing_charges` b ,`charge_applied` c where c.charge_id=b.charge_id and u.ID = c.u_id"; 
        $sql = "select * FROM `billing_charges`";
                    //echo $sql;
                    $arrVal = array();   
                     $sqltran = mysqli_query($con,$sql )or die(mysqli_error($con));


                     $i=1;
                     while ($rowList = mysqli_fetch_array($sqltran)) {

                                    $name = array(
                                            'num' => $i,
                                            'Id' => $rowList['charge_id'],
                                            'charge_title'=> $rowList['charge_title'],
                                            'charge_type'=> $rowList['charge_type'],
                                            'charge_amt'=> $rowList['charge_amt'],
                                            );      

                                        array_push($arrVal, $name); 
                        $i++;           
                     }
                          echo  json_encode($arrVal);     

                     mysqli_close($con);

                    }

【问题讨论】:

    标签: javascript jquery ajax mysqli php-7


    【解决方案1】:

    如果您需要根据输入A的内容更改来更改输入B的内容,您可以使用onchange Event

    更改输入 A 以包含对 javascript 函数的调用,如下所示:

    <input id="a" onchange="myFunction()">
    

    并在脚本部分实现 myFunction() 以完成您的预期工作

    <script>
        function myFunction() {
            var x = document.getElementById("a").value;
            if(x=="Hello")
                document.getElementById("b").value = "World";
        }
    </script>
    

    【讨论】:

    • 我想根据内容 A 内容 B 将从数据库中返回来从数据库中检索数据
    • 任何机构都有解决方案?
    猜你喜欢
    • 2018-01-17
    • 2013-05-23
    • 1970-01-01
    • 1970-01-01
    • 2013-05-11
    • 1970-01-01
    • 2020-03-26
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多