[Webinar] Learn how to a build a cloud-first strategyRegister Now

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 804
  • Last Modified:

How to use Javascript to allow only quarter increments such as .25, .5, .75, and .0

My HR Department wants to only allow quarter hour increments on an Acrobat form. I see it allows for custom Javascript validation. How can I use Javascript to allow only quarter increments on the end of the string such as .25, .5, .75, and .0
0
smetterd
Asked:
smetterd
  • 6
  • 4
  • 2
1 Solution
 
BadotzCommented:
This function will do what you need:


function bump(num) {
    return num += .25;
}

Open in new window

0
 
smetterdAuthor Commented:
Okay, but how would I enter is in to the acrobat field as a custom validation script where the form field is names "HOURSRow1" without the quotes?
0
 
BadotzCommented:
Can you add

onclick="bump(this);"

to the form field declaration?

Change the function to:


function bump(obj) {
    if (obj.value) {
        
        var num = obj.value;
        
        if (isNaN(num) {
            return ""; // Not a number
        }
        else {
            return parseFloat(obj.value) += .25;
        }
    }
    else {
        return ""; // No VALUE attribute
    }
}

Open in new window

0
Technology Partners: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

 
smetterdAuthor Commented:
The only triggers I see are as follows

 Triggers
0
 
BadotzCommented:
When do you want the value increased?
0
 
ProculopsisCommented:

Try something like this:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8"/>
<title>http://www.experts-exchange.com/Programming/Languages/Scripting/JavaScript/Q_26847810.html</title>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4/jquery.min.js"></script>
<script type="text/javascript"> 

jQuery(document).ready(function() {

  $("#check").click( checkQuarter );
  
});

function checkQuarter() {
  var value = parseFloat( $("#HOURSRow1").val() );
  var isValid = ( parseInt( value * 4 ) == value * 4 );

  alert( isValid );
}

</script>
</head>
<body>

  <input id="HOURSRow1" />
  <input id="check" value="Check" type="button" />

</body>
</html>

Open in new window

0
 
BadotzCommented:
jQuery? Really? Hammer this thumbtack with a flaming meteorite the size of Texas?
0
 
ProculopsisCommented:

<!-- jQuery? Really? Hammer this thumbtack with a flaming meteorite the size of Texas? -->

<form>
  <input id="HOURSRow1" />
  <input id="check" value="Check" type="button" onclick="alert( ( parseInt( this.form['HOURSRow1'].value * 4 ) == this.form['HOURSRow1'].value * 4 ) && !isNaN( parseFloat( this.form['HOURSRow1'].value ) ) );" />
</form>
0
 
smetterdAuthor Commented:
Badotz, I would like the value to be checked when the user tabs out of that field in the PDF. Thx for the help.
0
 
BadotzCommented:
Then use the onblure event:

onblur="bump(this);"

Not sure exactly how to specify this in Acrobat-speak, though...
0
 
smetterdAuthor Commented:
Thank you Badotz!
0
 
BadotzCommented:
No worries - glad to help.
0

Featured Post

Technology Partners: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

  • 6
  • 4
  • 2
Tackle projects and never again get stuck behind a technical roadblock.
Join Now