开发者

Error with validation process by input data

Goal:

I dont wanna retrieving any data if the input data contain any alphabet.

Problem:

If I have input data "23w" in variable ddd, the process on convertion is accceptable to be "23" in the variable currentvalue.

I don't want it to be converted into number if the input data contain any alphabet.

The sourcecode is writtin in jQuery and if possible it would be great to retreive the new solution in jQuery.

// Fullmetalboy


    var ddd = $('#field_hourInput').val();

    var currentValue = parseInt(ddd);


    // Validating message
    if(currentValue <= 0)
    {
        alert("Value must be positiv");
        nonError = false;
    }
    else if(  (isNaN开发者_开发技巧(currentValue)) && (ddd != "")  )
    {
        alert("value must contain numbers");
        nonError = false;
    }
    else if(  (isNaN(currentValue)) &&  (ddd == "")  )
    {
        alert("value must contain value in the textbox");
        nonError = false;
    }   


parseint() will return a number if the string begins with one, even if there is non-numbers following it. For example: http://jsfiddle.net/uQztw/

Probably better to use a regex. Something like

http://jsfiddle.net/uQztw/1/


You can use regex to validate that. Using regex with jquery. And using regex

[\d]

which will match any digit should do the trick.


Another way to convert string to int is Number(ddd), it does what you expect. But you could also check ddd through a regular expression, which feels better to me.

regexp-test: /^\d+$/.test(ddd)

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜