Validating Complicated Required Field

I am trying to come up with the correct validation scipt for a field that requires 13 characters - either numbers or numbers and x's, but does not allow for dashes, other letters or other characters. It is used for ISBN, and needs to be regulated because the professors cannot seem to grasp what is required. Can anyone help?

Here you go. Put this in the validate event for your field. It will strip out any characters other than 0123456789xX and then check that the result has 13 characters.
validateISBN(this.rawValue);
function validateISBN(s) {
var rExp = /[^0123456789xX]/gi;
var strFilteredString = s.replace(rExp, "");
this.rawValue = strFilteredString;
return (strFilteredString.length == 13)
Jared Langdon
www.jlangdon.ca

Similar Messages

  • Partial trigger and required field

    We developed an ADF JSF application which some of field has partial trigger .
    Then we add some required field.
    when runtime when we change any partial trigger target item all field validated and "required field missing message" occurs.
    How can we prevent this behaviour ?
    why all field controlled against partial triggered items?
    is it normal?
    How can we solve this ?
    Thanks.

    Hi,
    in JDeveloper 11 the implementation has changed and the issue wont be the same in most of the cases. There also is a notion of subform that allows you to only submit the field of interest - not affecting any other field.
    Frank

  • Is it possible to create a editable pdf with validation(required field) using Adobe Acrobat pro version?

    Hi,
    the subject says it all. I have downloaded the trail version to see if its possible to create a editable pdf with validation(required field) using Adobe Acrobat pro version?
    Basically, I will have to create a pdf form where users fill it and send it back to me. there will be required fields (the textbox and check box) that user need to fill before saving the editable pdf?
    Is it possible. if so, can someone kind enough to point to me right directions?
    Thanks in advance.

    Thanks for reply. What I am trying to achieve is to give an option for the user to download the pdf form and once the user tries to save the pdf, it validates with the required field. I managed to create the editable pdf with required fields option. I just need that validation to be done when user click on save file. How can I achieve this? thanks so much for your help.

  • How to fix problem of bypassing the submit button validation by pressing the space bar in the required fields. this occurrs in the internet explorer and chrome browser, but in foxfire.

    How to fix problem of bypassing the submit button validation by pressing the space bar in the required fields. This occurs in the internet explorer and chrome browse but not in foxfire

    How to fix problem of bypassing the submit button validation by pressing the space bar in the required fields. This occurs in the internet explorer and chrome browse but not in foxfire

  • Bypass Required Field Validation when needed in PDF Dynamic Form

    I faced a tricky situation, where some fields are required, but we need to allow bypass required (mandatory) validation rule when saving the form, and require to fill such fields when submitting the form. In other words, provide flexible control when to turn On / Off this feature.
    I wanted to implement a flexible solution, and I will post my findings here. Appreciate your feedback for improvements.
    Steps:
    1. Mark rquired fields as required.
    2. Specify "Empty Message" as "This field cannot be left blank", or similar.
    3. Specify "Validation Script Message" as "This field must have a proper value before submit", or similar.
    4. Create a Global Form Level Variable something like "StopTotalValidation" and default as "1" means by default, Turn Off Validation for some cases.
    5. For the fields which require this type of control, add the script (to be defined later) on the "validate" event:
    myTools.validateForRequiredField(this);
    6. Create a Script Object "myTools" and add the following script:
    function initStringFunc() {
    //call this function on Document Initialize
    String.prototype.trim = function() {
        return this.replace(/^\s+|\s+$/g,"");
    String.prototype.ltrim = function() {
        return this.replace(/^\s+/,"");
    String.prototype.rtrim = function() {
        return this.replace(/\s+$/,"");
    String.prototype.isEmpty = function() {
        return (this == null) || this.trim() == "";
    function setNodeProperty(theNode, theProperty, newValue) {
       if (theNode[theProperty] != newValue) {
            theNode[theProperty] = newValue; 
    function isNodePropertyEmpty(theNode, theProperty) {
        var result;
        if (theNode == null || theNode[theProperty] == null) {
            result = true;
        } else {
            result = theNode[theProperty].isEmpty();
        return result;
    function disableTotalValidation() {
        StopTotalValidation.value = "1";
    function enableTotalValidation() {
        StopTotalValidation.value = "0";
    function isTotalValidationOn() {
        return StopTotalValidation.value != "1";
    function isTotalValidationOff() {
        return StopTotalValidation.value == "1";
    const conRequired = "(required)";
    function validateForRequiredField(theFld) {
        // Bypass Required Field Validation when Global Validation is Off.
        var result=false;
        if (theFld) {
            if (theFld.mandatory && theFld.mandatory == "error") {
                if (myTools.isNodePropertyEmpty(theFld, "rawValue")) {
                    myTools.setNodeProperty(theFld, "rawValue", conRequired);
                if (isTotalValidationOn()) {
                    if (isNodePropertyEmpty(theFld, "rawValue") || theFld.rawValue.toLowerCase() == conRequired.toLowerCase()) {
                        result = false;
                    } else {
                        result = true;
                } else {
                    result = true;             
        } else {
            result = false;
        return result;
    7. Now, on the click of "Save" button call the function "disableTotalValidation()" and on the click of "Submit" button call the function "enableTotalValidation()".
    I have just finished implementing the above solution, and as per my initial testing, it is working fine.
    I will post this to my Google Docs workspace, and provide updates their.
    Tarek.

    Hi Tarek,
    I see what you mean in relation to clarity if you used the form variable approach. It was only a suggestion. Like so many things in LC, there is more than one way to finding a solution to a problem.
    The triple equal sign (===) is testing if the condition is equal, but to a higher standard. It is testing if the values are identical to each other. For example if you were testing if a textfield was empty, with Equality (==) you might have this:
    if (this.rawValue == null || this.rawValue == "") {
         // Some script
    If you use Identity (===) you can do the same thing with less script:
    if (this.rawValue === null) {
         // Some script
    It is also useful when testing the value of an object, but also the type (eg string, number, Boolean).
    Lastly, it can be used for non-identity (!==).
    In relation to createNode() etc, apart from John's blog, it is covered in the LC documents: http://www.adobe.com/support/documentation/en/livecycle/documentation.html. Look for the scripting guides and the guide to the XML Form Object Model.
    Good luck,
    Niall

  • Form field validation: All required data lost when clicking browser-back-button!

    Hi folks,
    I have a big problem using the validation text  field components of Spry when the user must click the browser back button (or clicking a history.back()-Link) because he has  entered a wrong CAPTCHA-code!
    Right now, all the data - only in the required fields - not in the optional  fields!!! - is lost and the user has to enter all data once  again;-(
    Does anybody know why only the data in the  required fields is lost? Is there a nice workaround?
    I really  appreciate a quick answer:-)
    Kind regards from cloudy Germany
    Thomas

    rememberFormInputs('frmlogin', 'input-');
    'frmlogin' should be the id of page, not the name. so on your <form> tag, add the id="frmlogin"
    remove the
    // overload alert
    function alert(str) {
         var el = document.getElementById('alert');
         if (el) {
              el.value += str+"\r\n";
    Its really bad practice to overwrite the alert. and inside the rememberFormInputs remove these lines:
    alert('old value remembered: '+old_value);
    alert('setCookie: '+name + ' = '+value);
    and it should work

  • Struts validator for two fields(conditional required)

    Have a Drop down and an input field.
    When user selects "Type 1" from drop down only then the input field is required. otherwise it's not a required field.
    Looking at the validator guide in struts maybe I have to create a new validator rule which should check if drop down value "Type 1". But not sure how to code to say that the input field is required here.
    How to do this?
    Thanks.

    Yes you have to check for drop down value "Type 1".
    when you hit on submit it goes to the validation function right ...
    there add a condition. Check if tpe 1 is selected , if so proceed validation the text box , else skip that validation and come out.

  • Help with validating required fields

    I have approximately 50 columns in a result set. I need to find out if the required fields (20 out of those 50 columns are required fields) have values (not empty field).
    Since I'm dealing with a large result set (approximately 3000 to 5000 records), what is the most efficient thing to do to validate each field?
    For example:
    Column A, B,C,D.E.F, etc are required fields, I need to validate that each of these column has value otherwise I need to <CFABORT> the process and notify the user.

    The data is not yet in our database,they are created in memory when the app. is run.
    I have sort of  Xml To Query function that generates a result set. I'm doing some validation on req. fields before they are inserted into our DB.
    I try to run your code but I got an error:The value '' cannot be converted to a number
    Here is my code imitating yours (For testing I'm using fewer columns):
    <CFSET MandatoryFields = "Org,OrgId,LastName,FirstName,Gender,Address,City,State,Zip,Phone"> 
    <cfquery name="q1" dbtype="query"> 
    <cfloop list="#MandatoryFields#" index="ThisField"> 
    select Org, '#ThisField# null' problem 
    from ResutSet 
    where #ThisField# is null 
    union 
    </cfloop>
    select Campus, '' problem 
    from ResutSet 
    where 1 = 2 
    </cfquery>
    <cfabort>

  • How to exclude Required Validation for some fields?

    Hi,
    I have a page in a form with some fields that are set as required like this:
    Field 1   Field 2
    table
    Field 3   Field4 "Add" button
    Field 5    Field 6
    "Submit" button
    There are two buttons in this form. The "Add" button is PPR allows adding Field 3 and Field 4 to the table. The "Submit" button is for the actual submission and processing. When "Add" button is pressed, I only want the require validation to be done for Field 3 and Field 4, but not Field 1/Field 2/Field 5/Field 6.
    Currently, if I press "Add" button, the required field validations are triggered for all six fields. How can I only limit the require validation to some required fields only for this button?
    Thanks
    -Mina

    subform is a great idea and kinna what I needed in this situation, but there is another challenge.
    In my case, I tried to put table, Field 3 and Field 4 in subform:
    Field 1 Field 2
    <af:subform>
    table
    Field 3 Field4 "Add" button
    </af:subform>
    Field 5 Field 6
    "Submit" button
    When I press "Add" button, Required validation still triggered for all fields. Only if I put Field 1 and Field 2 in another subform, and Field 5 and Field 6 in a different subform. Then it works like this:
    <af:subform>
    Field 1 Field 2
    </af:subform>
    <af:subform>
    table
    Field 3 Field4 "Add" button
    </af:subform>
    <af:subform>
    Field 5 Field 6
    "Submit" button
    </af:subform>
    But in my case, I need Field 1, Field 2, Field 5, Field 6 and "Submit" button to be in the same subform, as the "Submit" button applies to these four fields. In the UI design, Field 3 and Field 4 are between Field 1/Field 2 and Field 5/Field 6 though.
    Any other ideas?

  • Publishing HTML(Page content) field required field validation is not working

    The required field validation is not working on Site Column of type "Full HTML content with formatting and constraints for publishing". I found a link i.e.
    https://social.msdn.microsoft.com/Forums/office/en-US/7b544aae-2562-4b8e-8e5b-36a1d47a4d14/publishing-htmlpage-content-field-required-field-validation-is-not-working?forum=sharepointdevelopment
    which tells this is a hot fix in July 2014 CU . Can anyone help me with what all Fixes are there in July 2014 CU. So that I can update only if it required!
    Or any other alternative where I can use the required field validator on "Full HTML content with formatting and constraints for publishing" column type?

    You could add a scripteditor webpart on the newform.aspx page and add client side validation using jQuery.
    $(document).ready(function()
     var fname = document.getElementById('fname').val();
     var lname = document.getElementById('lname').val();
     var age = document.getElementById('age').val();
     /*Do not know how to get element by class and that too, two different type. Have to check if user chose anything or not*/
      $("#submit").click(function()
       if(fname.length === 0)
        alert("Please input a first name");
       else if(lname.length === 0)
        alert("Please input a last name");
       else if(age.length === 0)
        alert("Please input an age");

  • Validating Required Fields

    Hi
    If a field is set up as a 'required field' can I prevent the user from tabbing to the next field when no data/information is entered in this field.
    I wish to be sure that all the information I need on a particular form is entered before it is either email or even printed. If so, where do I find the instructions to do this.
    Frank

    I am having this problem too. I found out that the Default Value populates itself with a space (for text fields) and the problem is that if they enter nothing it takes the default value (a space) and so the field is not empty and it passes the validation.
    If you delete the space and try to tab off you get the error message. It seems to be impossible to leave the default value empty or turn it off for required fields, so surely this is a bug?

  • NULL value not validated for a Required field

    Hi,
    I have added a MessageLovInput item to the expense header page (/oracle/apps/ap/oie/entry/header/webui/GeneralInformationPG), and have made the Required Value to True. But I do not get any error when I navigate to the next page without populating the field. If I enter in incorrect information, it validates it against the LOV, but not for null values.
    Any pointers to make the field validate NULL values?
    Thanks,
    Ashish

    Yeah.. I can see the Required field indicator (*) next to the field. I have tried with all the values (uiOnly, ValidatorOnly, Yes etc.), but it does not validate NULL values.
    I'll try to handle this in the controller, but would prefer if this can be done by personalization.
    Ashish

  • PAYABLES OPEN INTERFACE INVOICE IMPORT 시 REQUIRED FIELD 정보

    제품 : FIN_AP
    작성날짜 : 2005-05-10
    PAYABLES OPEN INTERFACE INVOICE IMPORT 시 REQUIRED FIELD 정보
    ==========================================================
    PURPOSE
    AP Open Interface Invoice Import 를 통해 Invoice 를 생성 코자 할 경우 반드시 필요한 Field 에 대한 정보이다.
    Explanation
    1. PO 나 Project 과 Match 하지 않는 Invoice Case
    Table : AP_INVOICE_INTERFACE
    ==============================
    Required Columns
    ================
    -INVOICE_ID : AP_INVOICES_INTERFACE_S.NEXTVAL를 이용하여 생성됨
    -INVOICE_NUM : 특정 Supplier 내에서는 unique 해야함
    -VENDOR_ID/VENDOR_NUM/VENDOR_NAME : Active 하여야 하며 PO_VENDORS과 Mapping
    -VENDOR_SITE_ID/VENDOR_SITE_CODE : Active 한 Site 여야 하며 PO_VENDOR_SITES table과 mapping
    -INVOICE_AMOUNT : 'STANDARD' type인 경우에는 양수, 'CREDIT' type인 경우는 음수를 입력
    -ORG_ID : AP_SYSTEM_PARAMETERS.ORG_ID
    -SOURCE : select lookup_code from ap_lookup_codes where lookup_type='SOURCE' 중 하나
    Table : AP_INVOICE_LINES_INTERFACE
    ==================================
    Required Columns for LINE_TYPE_LOOKUP_CODE = 'ITEM'
    ===================================================
    -INVOICE_ID : AP_INVOICES_INTERFACE.INVOICE_ID
    -INVOICE_LINE_ID : AP_INVOICE_LINES_INTERFACE_S.NEXTVAL
    -LINE_NUMBER : 해당 invoice 내에서 unique 해야함.
    -LINE_TYPE_LOOKUP_CODE :'ITEM'
    -AMOUNT
    -ACCOUNTING_DATE: Optional. Defaulted from INVOICE_DATE or SYSDATE
    - DIST_CODE_CONCATENATED / DIST_CODE_COMBINATION_ID
    : select code_combination_id from gl_code_combinations
    where account_type = 'E' and enabled_flag = 'Y'
    and summary_flag = 'N'
    and sysdate between nvl(start_date_active, sysdate-1)
    and nvl(end_date_active, sysdate+1))
    Required Columns for LINE_TYPE_LOOKUP_CODE = 'TAX'
    ===================================================
    -INVOICE_ID : AP_INVOICES_INTERFACE.INVOICE_ID
    -INVOICE_LINE_ID : AP_INVOICE_LINES_INTERFACE_S.NEXTVAL
    -LINE_NUMBER : 해당 invoice 내에서 unique 해야함.
    -LINE_TYPE_LOOKUP_CODE : 'TAX'
    -TAX_CODE / TAX_CODE_ID : AP_TAX_CODES_ALL table에서 mapping
    -AMOUNT
    -ACCOUNTING_DATE : Optional. Defaulted from INVOICE_DATE or SYSDATE
    -DIST_CODE_CONCATENATED or DIST_CODE_COMBINATION_ID
    : select code_combination_id from gl_code_combinations
    where account_type = 'E' and enabled_flag = 'Y'
    and summary_flag = 'N'
    and sysdate between nvl(start_date_active, sysdate-1)
    and nvl(end_date_active, sysdate+1))
    2. PO Matched Invoice 의 경우                    Table: AP_INVOICE_INTERFACE
    ============================
    Required Columns
    ================
    -INVOICE_ID : AP_INVOICES_INTERFACE_S.NEXTVAL를 이용하여 생성됨
    -INVOICE_NUM : 특정 Supplier 내에서는 unique 해야함
    -PO_NUMBER : approved 된 PO 여야 하며 cancelled, closed 혹은 final closed 된 PO NUMBER 는 안됨. PO_HEADERS Table 과 mapping
    -INVOICE_AMOUNT : 'STANDARD' type인 경우에는 양수, 'CREDIT' type인 경우는 음수를 입력
    -SOURCE : select lookup_code from ap_lookup_codes where lookup_type='SOURCE'
    -ORG_ID : AP_SYSTEM_PARAMETERS_ALL.ORG_ID
    Table: AP_INVOICE_LINES_INTERFACE
    =================================
    Required Columns for PO Matched Lines
    =====================================
    -INVOICE_ID : AP_INVOICES_INTERFACE.INVOICE_ID
    -INVOICE_LINE_ID : AP_INVOICE_LINES_INTERFACE_S.NEXTVAL
    -LINE_NUMBER : 해당 invoice 내에서 unique 해야함.
    -LINE_TYPE_LOOKUP_CODE : 'ITEM'
    -AMOUNT : QUANTITY_INVOICED * UNIT_PRICE
    If MATCH_OPTION is 'P', then populate:
    -RELEASE_NUM or PO_RELEASE_ID : Blanket Release only, validated against PO_RELEASES_ALL
    -PO_NUMBER or PO_HEADER_ID : Validated against PO_HEADER_ALL
    -PO_LINE_NUMBER or PO_LINE_ID : Validated against PO_LINES_ALL
    -PO_SHIPMENT_NUM or PO_LINE_LOCATION_ID : Validated against PO_LINE_LOCATIONS_ALL
    If MATCH_OPTION is 'R', then populate:
    -RECEIPT_NUMBER : RCV_SHIPMENT_HEADERS.RECEIPT_NUM
    -RCV_TRANSACTION_ID or PO_LINE_LOCATION_ID : RCV_TRANSACTIONS과 Mapping
    Example
    Reference Documents
    Note 205331.1

    Chandrasekar,
    as i know, the main thing you should consider is, that starting from R12 you will
    be able to import invoices only through the Payables Open Interface.
    basically, Invoice Import is used by OA to create invoice (from expense reports or from Oracle Projects). for standard invoice import, i've ever used Payables Open Interface.
    Milan
    <BLOCKQUOTE><font size="1" face="Verdana, Arial">quote:</font><HR>Originally posted by Chandrasekara Kayamboo ([email protected]):
    I would like to know which is the best way to import invoice and what are the advantages and disadvange in each.
    Regards
    Chandrasekar<HR></BLOCKQUOTE>
    null

  • Change the Data Type of a Standard Required Field

    Hello Experts,
    Need to know if is it possible to change the data type of a standard field. The field is marked as a required field.
    For example: If a standard field is an Object Picker and I would like to change it to a string field. Is it possible? How can I do it?!
    Many thanks,
    Igor Nakamura

    Hi Igor,
    Since you cannot hide a required field, what you can do is move the standard required field to someplace less noticable (like the bottom of the page) and then use a validation script to set it to some benign value.
    -Howie

  • How to validate required fields before executing menu item ("Save As") using cutom Javascript?

    Hi,
    Sorry, I am new to PDF Development. I tried creating PDF using Acrobat XI Pro. During creation, I have encountered issues in running custom JavaScript. The requirement is to validate all the required fields before saving the PDF. I tried using the following scripts to validate the said required fields. But, it's not working.
    Option 1: If the field is null, a message box will appear.
    if(this.getfield("textbox") = null){
    app.alert("required");
    else {app.execMenuItem("SaveAs");}
    Option 2: If the field is required, a message box will appear.
    var f = this.getField("textbox");
    f.required = true;
    if(f = true)
    app.alert('required');
    else
    app.execMenuItem("SaveAs");
    The scripts mentioned above are not working. I wanted to validate the required fields before saving the PDF.
    In addition, I tried validating each field using the following script:
    f = getField(event.target.name)
    if (f.value.length == 0)
        f.setFocus()
        //Optional Message - Comment out the next line to remove
        app.alert("This field is required. Please enter a value.")
    When I open the PDF, the script is working. However, when the message box pops out, the "OK" button is not working as expected. The message box is not closing. I tried opening the form in a site in different Java versions (like 7-11 and 7-67). It's working in version 7-67. I tried upgrading the Java version from 7-11 to 7-67. Still, it doesn't work.
    I would appreciate your feedback on this matter.

    If you set the fields as required, then when the user hits the print button you could run this script:
    var txt = form1.execValidate();
    if (txt == true){
    print command
    This code assumes that the root node of your form is form1. Also ensure you put a message into the Empty Message parameter for each field that you want to mark s required.

Maybe you are looking for

  • Calling Subroutine of a Function Module

    Hi friends, I need to call a routine which exists in a function module from anopther function module. The routine is in a include program (ie type I). is there any way....

  • How do I get rid of (to many HTTP redirects) from my App Store

    Every time I go to categories or top 25 I cannot get in it keeps saying to many HTTP redirect how can I fix this It did not start until I had my phone reset. And I try resetting my phone again and it won't even reset now

  • Open Add Item Form as Dialog

    Hi All - I have a custom button on the click of which I am trying to open a Add Item form. When the display form opens I want to hide all the masterpage items( viz. Quick Launch, header, foooter, etc). I tried below but it's not opening and giving er

  • Please help anything wrong to this file

    Hi! I encounter this error when try to import a file. But there is not problem when i use other pc to complier and import the file. Compiling C:\test\RationalTest.java Command line: "C:\j2sdk1.4.0\bin\javac.exe" -deprecation -g -classpath C:\test "C:

  • R3 to Oracle interface

    Hi, To create a B2B scenario, R3 --> XI --> Oracle Database......What are the adaptors used at the sender end and at the receiver end. Is it right to use BAPI/IDOC at the sender end (for R3) and JDBC at the Receiver end. But B2B scenarios are done th