C. Kelly
C. Kelly

Reputation: 207

Submit Button not working

Problem My submit button is not working for some reason. I've got a couple of console.log's but I'm not getting feedback from them not sure what's wrong.I'm not getting errors in the browser. Here's a codepen example: http://codepen.io/coryk/pen/kXxzXv?editors=1111

html

<div class="top-content">
        <div class="inner-bg">
            <div class="container">
                <div class="row">
                    <!--    Header Text     -->
                    <div class="col-sm-10 text">
                        <h1><strong>SAGA</strong> Data Form</h1>
                    </div>
                </div>
                <div class="row">
                    <div class="col-sm-6 form-box">
                        <div class="form-top">
                            <div class="form-top-left">
                                <h3>Enter Data Below</h3>
                                <p>Please Enter Data to be converted</p>
                            </div>
                            <div class="form-top-right">
                                <i class="fa fa-rocket"></i>
                            </div>
                        </div>
                        <div class="form-bottom">
                            <form action="" class="login-form" method="post" role="form">
                                <div class="form-group">
                                    <form id="add_name" name="add_name">
                                        <div class="table-responsive">
                                            <table class="table table-bordered" id="dynamic_field">
                                                <!--    Form Titles     -->
                                                <tr>
                                                    <td>
                                                        <p style="text-align: center;"><strong>Select Unit Conversion</strong></p>
                                                    </td>
                                                    <td>
                                                        <p style="text-align: center;"><strong>Enter Unit</strong></p>
                                                    </td>
                                                    <td>
                                                        <p style="text-align: center;"><strong>Enter Percent Finer</strong></p>
                                                    </td>
                                                </tr><!--    Form Elements       -->
                                                <tr>
                                                    <td><select class="unit selectpicker show-tick form-control" data-live-search="true" id="basic">
                                                        <option value="mm">
                                                            Millimeters
                                                        </option>
                                                        <option value="micron">
                                                            Micron
                                                        </option>
                                                        <option value="phi">
                                                            Phi
                                                        </option>
                                                        <option value="inches">
                                                            Inches
                                                        </option>
                                                        <option value="Mesh">
                                                            Mesh Size
                                                        </option>
                                                    </select></td>
                                                    <td><input class="form-control name_list" id="unitVal" name="name[]" placeholder="Enter Unit Here" type="text" value="75000"></td>
                                                    <td><input class="form-control name_list" id="percent" name="name[]" placeholder="Enter Percent Finer Here" type="text" value="100"></td>
                                                    <td><button class="btn btn-success" id="add" name="add" type="button">Add More</button></td>
                                                </tr>
                                            </table>
                                        </div>
                                    </form>
                                </div><button class="btn" id="sub" type="submit">Submit</button>
                            </form>
                        </div>
                    </div>
                </div>
            </div>
        </div>

JavaScript

$( document ).ready(function(){
    //
        var micronConv, val, incheConv, meshCov;
        var percentFiner = parseInt($("#percent").val());   

    $('#sub').click(function(){
                var unitValue = parseInt($("#unitVal").val());
                var selectedOption = $('.unit option:selected').text();
                            if(selectedOption === "micron"){
                                        if ( unitValue === 0 || null ){
                                            unitValue = null;
                                        }else{
                                             unitValue = unitValue / 1000;  //convert to mm
                                             micronConv = -Math.log2(unitValue); //convert to Phi
                                                console.log(micronConv,percentFiner);
                                        }
                    } else if (selectedOption === "inches"){
                             val =  Math.round(unitValue * 25.4);  //convert to mm
                             incheConv = -Math.log2(val); //convert to Phi
                                            console.log(incheConv,percentFiner);
                    } else if (selectedOption === "Mesh"){
                                 if (unitValue === 2.5){                            //convert to mm
                                    unitValue = -Math.log2(8.00);  //convert to Phi
                                } else if( unitValue === 3){
                                    unitValue =  -Math.log2(6.730);
                                 } else if( unitValue === 4 ) {
                                    unitValue = -Math.log2(4.760);
                                 } else if (unitValue === 5 ){
                                     unitValue = -Math.log2(4.000);
                                 } else if (unitValue === 6){
                                     unitValue = -Math.log2(3.360);
                                 }  else if (unitValue === 7){
                                     unitValue = -Math.log2(2.830);
                                 }  else if (unitValue === 8){
                                     unitValue = -Math.log2(2.38);
                                 } else if (unitValue === 10){
                                     unitValue = -Math.log2(2.000);
                                 } else if (unitValue === 12){
                                     unitValue = -Math.log2(1.680);
                                 } else if (unitValue === 14 ){
                                     unitValue = -Math.log2(1.410);
                                 } else if (unitValue === 16){
                                     unitValue = -Math.log2(1.190);
                                 } else if (unitValue === 18){
                                     unitValue = -Math.log2(1.000);
                                 } else if (unitValue === 20){
                                        unitValue = -Math.log2(0.841);
                                 } else if (unitValue == 25){
                                     unitValue = -Math.log2(0.707);
                                 } else if (unitValue === 30){
                                     unitValue = -Math.log2(0.595);
                                 } else if (unitValue === 35){
                                     unitValue = -Math.log2(0.500);
                                 } else if (unitValue === 40){
                                     unitValue = -Math.log2(0.400);
                                 } else if (unitValue === 45){
                                     unitValue = -Math.log2(0.354);
                                 } else if ( unitValue === 50){
                                     unitValue = -Math.log2(0.297);
                                 } else if (unitValue === 60){
                                     unitValue= -Math.log2(0.250);
                                 } else if (unitValue === 70){
                                     unitValue = -Math.log2(0.210);
                                 } else if (unitValue === 80){
                                     unitValue = -Math.log2(0.177);
                                 } else if (unitValue === 100){
                                     unitValue = -Math.log2(0.149);
                                 } else if (unitValue === 120){
                                     unitValue = -Math.log2(0.125);
                                 } else if (unitValue === 140){
                                     unitValue = -Math.log2(0.105);
                                 } else if (unitValue === 170){
                                     unitValue = -Math.log2(0.088);
                                 } else if (unitValue === 200){
                                     unitValue = -Math.log2(0.074);
                                 } else if (unitValue === 230){
                                     unitValue = -Math.log2(0.063);
                                 } else if (unitValue === 270){
                                     unitValue = -Math.log2(0.053);
                                 } else if (unitValue === 325){
                                     unitValue = -Math.log(0.044);
                                 } else if (unitValue === 400){
                                     unitValue = -Math.log2(0.037);
                                 }  else if(unitValue >= 401) {
                                     unitValue = "Not A Valid Size";
                                 }
                                meshCov = unitValue;
                    }

        });
});

Upvotes: 2

Views: 133

Answers (2)

Djaouad
Djaouad

Reputation: 22776

FINAL CODE :
Place the <button> in the <form> :
EDIT : You're comparing selected text with "micron", but it's actually "Micron", so you can either replace that, or use regular expressions to ignore cases (/micron/i), so your code should be :
PS : And put the button inside the form, directly above the closing tag of the form : </button></form>
HTML :

<div class="top-content">
    <div class="inner-bg">
        <div class="container">
            <div class="row">
                                <!--    Header Text     -->
                <div class="col-sm-10 text">
                    <h1><strong>SAGA</strong> Data Form</h1>
                </div>
                                </div>

            <div class="row">
                <div class="col-sm-6 form-box">

                    <div class="form-top">
                        <div class="form-top-left">
                            <h3>Enter Data Below</h3>
                            <p>Please Enter Data to be converted</p>
                        </div>
                        <div class="form-top-right">
                            <i class="fa fa-rocket"></i>
                        </div>
                    </div>

                    <div class="form-bottom">
                        <form action="" class="login-form" method="post" role="form">
                            <div class="form-group">
                                <form id="add_name" name="add_name">
                                    <div class="table-responsive">


                                        <table class="table table-bordered" id="dynamic_field">
                                                                                            <!--    Form Titles     -->
                                            <tr>
                                                                                                            <td><p style="text-align: center;"><strong>Select Unit Conversion</strong></p></td>
                                                                                                            <td><p style="text-align: center;"><strong>Enter Unit</strong></p></td>
                                                                                                            <td><p style="text-align: center;"><strong>Enter Percent Finer</strong></p></td>
                                                                                            </tr>
                                                                                        <!--    Form Elements       -->
                                                                                            <tr>
                                                                                                            <td><select id="basic" class="unit selectpicker show-tick form-control" data-live-search="true">
                                                                                                            <option value="mm">Millimeters</option>
                                                                                                            <option value="micron">Micron</option>
                                                                                                            <option value="phi">Phi</option>
                                                                                                            <option value="inches">Inches</option>
                                                                                                            <option value="Mesh">Mesh Size</option>
                                                                                                            </select></td>
                                                                                                            <td><input id="unitVal" value="75000" class="form-control name_list" name="name[]" placeholder="Enter Unit Here" type="text"></td>
                                                                                                            <td><input value="100"  id="percent" class="form-control name_list" name="name[]" placeholder="Enter Percent Finer Here" type="text"></td>
                                                        <td><button class="btn btn-success" id="add" name="add" type="button">Add More</button></td>
                                            </tr>
                                        </table>
                                    </div><button id="sub" class="btn" type="submit">Submit</button>
                                </form>
                            </div>
                        </form>
                    </div>
                </div>
            </div>
        </div>
    </div>
</div>

JS :

if(selectedOption === "Micron"){
    // DO calc-s
} else if (selectedOption === "Inches"){ // DO calc-s }
  else if (selectedOption === "Mech Size"){ // DO calc-s }

Result of your example with Micron :
enter image description here

Upvotes: 1

I&#39;m Geeker
I&#39;m Geeker

Reputation: 4637

Add the form tag form

<form action="" method="post" />
<div class="top-content">
        <div class="inner-bg">
            <div class="container">
                <div class="row">
                    <!--    Header Text     -->
                    <div class="col-sm-10 text">
                        <h1><strong>SAGA</strong> Data Form</h1>
                    </div>
                </div>
                <div class="row">
                    <div class="col-sm-6 form-box">
                        <div class="form-top">
                            <div class="form-top-left">
                                <h3>Enter Data Below</h3>
                                <p>Please Enter Data to be converted</p>
                            </div>
                            <div class="form-top-right">
                                <i class="fa fa-rocket"></i>
                            </div>
                        </div>
                        <div class="form-bottom">
                            <form action="" class="login-form" method="post" role="form">
                                <div class="form-group">
                                    <form id="add_name" name="add_name">
                                        <div class="table-responsive">
                                            <table class="table table-bordered" id="dynamic_field">
                                                <!--    Form Titles     -->
                                                <tr>
                                                    <td>
                                                        <p style="text-align: center;"><strong>Select Unit Conversion</strong></p>
                                                    </td>
                                                    <td>
                                                        <p style="text-align: center;"><strong>Enter Unit</strong></p>
                                                    </td>
                                                    <td>
                                                        <p style="text-align: center;"><strong>Enter Percent Finer</strong></p>
                                                    </td>
                                                </tr><!--    Form Elements       -->
                                                <tr>
                                                    <td><select class="unit selectpicker show-tick form-control" data-live-search="true" id="basic">
                                                        <option value="mm">
                                                            Millimeters


                                       </option>
                                                    <option value="micron">
                                                        Micron
                                                    </option>
                                                    <option value="phi">
                                                        Phi
                                                    </option>
                                                    <option value="inches">
                                                        Inches
                                                    </option>
                                                    <option value="Mesh">
                                                        Mesh Size
                                                    </option>
                                                </select></td>
                                                <td><input class="form-control name_list" id="unitVal" name="name[]" placeholder="Enter Unit Here" type="text" value="75000"></td>
                                                <td><input class="form-control name_list" id="percent" name="name[]" placeholder="Enter Percent Finer Here" type="text" value="100"></td>
                                                <td><button class="btn btn-success" id="add" name="add" type="button">Add More</button></td>
                                            </tr>
                                        </table>
                                    </div>
                                </form>
                            </div><button class="btn" id="sub" type="submit">Submit</button>
                        </form>
                    </div>
                </div>
            </div>
        </div>
    </div>

Upvotes: 1

Related Questions