Skip to Content
Menu
This question has been flagged
3755 Views

Dear All,

    I customize jobs online form.  I'd like to validate the form after submit. 

But I've wondering why it does not working.

Appreciate any help. 


template.xml:

<?xml version="1.0" encoding="utf-8"?>

<odoo>

    <template id="assets_frontend" inherit_id="website.assets_frontend" name="website_seic_assets">

        <xpath expr="link[last()]" position="after">

            <link rel='stylesheet' type="text/less" href='/website_seic/static/src/less/website_seic.less'/>

        </xpath>

        <xpath expr="script[last()]" position="after">

            <script type="text/javascript" src="/website_seic/static/src/js/custom.js"></script>

        </xpath>

    </template>

    <template id="index">

            <title>Academy</title>

            <t t-foreach="teachers" t-as="teacher">

              <p><t t-esc="teacher"/></p>

            </t>

    </template>


    <template id="apply">

    <t t-call="website.layout">

        <t t-set="additional_title">Apply Job</t>


        <div id="wrap"  class="container">

            <h1 class="text-center">

                JOBS

            </h1>


            <h2 t-if="job" class="text-center text-muted">

                <span t-field="job.name"/>

            </h2>


            <div class="row">

                <section id="forms">

                    <form name="myForm" action="/website/form/" method="post" class="s_website_form form-horizontal container-fluid mt32" enctype="multipart/form-data" data-model_name="hr.applicant" data-success_page="/myjob-thank-you" t-att-data-form_field_department_id="job and job.department_id.id or False" t-att-data-form_field_job_id="job and job.id or False">

                        <div class="form-group form-field o_website_form_required_custom">

                            <div class="col-md-3 col-sm-4 text-right">

                                <label class="control-label" for="partner_name">Name</label>

                            </div>

                            <div class="col-md-7 col-sm-8">

                                <input type="text" class="form-control o_website_form_input" name="partner_name" required="" placeholder="Please enter your name"/>

                            </div>

                            <div id="other-partnername-container">

                                <div class="col-md-3 col-sm-4"></div>

                                <div class="col-md-7 col-sm-8">Please enter your name (Character Only)</div>

                            </div>

                        </div>

                        <div class="form-group form-field o_website_form_required_custom">

                            <div class="col-md-3 col-sm-4 text-right">

                                <label class="control-label" for="x_partner_id">Person ID</label>

                            </div>

                            <div class="col-md-7 col-sm-8">

                                <input type="text" class="form-control o_website_form_input" name="x_partner_id" required="" placeholder="Person ID"/>

                            </div>

                           <div id="other-partnerid-container">

                                <div class="col-md-3 col-sm-4"></div>

                                <div class="col-md-7 col-sm-8">Please enter your personal ID</div>

                            </div>

                        </div>

                        <div class="form-group form-field o_website_form_required_custom">

                            <div class="col-md-3 col-sm-4 text-right">

                                <label class="control-label" for="partner_mobile">Mobile</label>

                            </div>

                            <div class="col-md-7 col-sm-8">

                                <input type="text" class="form-control o_website_form_input" name="partner_mobile" required="" placeholder="Please enter mobile"/>

                            </div>

                           <div id="other-mobile-container">

                                <div class="col-md-3 col-sm-4"></div>

                                <div class="col-md-7 col-sm-8">Please enter mobile</div>

                            </div>

                        </div>

                        <div class="form-group form-field o_website_form_required_custom">

                            <div class="col-md-3 col-sm-4 text-right">

                                <label class="control-label" for="email_from">Email</label>

                            </div>

                            <div class="col-md-7 col-sm-8">

                                <input type="email" class="form-control o_website_form_input" name="email_from" required="" placeholder="Please enter email"/>

                            </div>

                           <div id="other-email-container">

                                <div class="col-md-3 col-sm-4"></div>

                                <div class="col-md-7 col-sm-8">Please enter email</div>

                            </div>

                        </div>

                        <div class="form-group">

                            <div class="col-md-offset-3 col-sm-offset-4 col-sm-8 col-md-7">

                                <span id="my-button" class="btn btn-primary btn-lg o_website_form_send">Submit</span>

                                <span id="o_website_form_result"></span>

                            </div>

                        </div>

                    </form>

                </section>

            </div>

        </div>

    </t>

</template>

</odoo>


custom.js

$(function(){

    'use strict';

    $('body').on('click', 'span', function() {

          //javascript working fine when uncomment/comment below line:

         //alert (document.myForm.x_partner_id.value);

        if !(checkPartnerID(document.myForm.x_partner_id.value)) 

            $("#other-partnerid-container").show();

    else

        $("#other-partnerid-container").hide();


    });

});



function checkPartnerID(id)

{

    if(id.length != 13)

        return false;

    for(i=0, sum=0; i < 12; i++)

        sum += parseFloat(id.charAt(i))*(13-i);

    if((11-sum%11)%10!=parseFloat(id.charAt(12)))

            return false;

    return true;

};

Avatar
Discard