4

I have a form with 3 input box and all the input box does not have id, name field in it. So if i enter value in it, How can i check the value of input box without id and name field using javascript

<form id='a' action='' >
    <input type='text' value='' />
    <input type='text' value='' />
</form>

This is the code in html and i want to have the value of input box using javascript. Can i do that?

0

5 Answers 5

2

You could get a reference to them and check their value property.

For the luxury of supporting newer browsers...

[].forEach.call(document.querySelectorAll("#a input[type='text']"),
               function(input) {
                   var value = input.value;
               }); 

If you need to support the annoying browsers that still seem to linger, just write a bit more code and you're good as gold.

var inputs = document.getElementById("a").getElementsByTagName("input");
var i;
var length;
var value;

for (i = 0, length = inputs.length; i < length; i++) {
     // Check we have [type='text']
     if (inputs[i].type != "text") {
         continue;
     }
     value = inputs[i].value;

}
Sign up to request clarification or add additional context in comments.

3 Comments

He want's to check textbox value not a checkbox
@Harry I must need glasses. Updated the answer.
thanks it worked for me , I changed second last line with input.value to inputs.value
1

you can get values by getElementsByTagName and code would be like this

var inputs = document.getElementsByTagName('input');
value1 = inputs[0].value;
value2 = inputs[1].value;

1 Comment

Unfortunately, that won't actually work. You can't subscript undefined (well, not usually).
1

You could use the elements property of the form object which will iterate over just the input elements inside the form:

for (var i = 0; i < a.length; i++) {
  var e = a[i];
  if (e.type == 'text') {
    f(e.value);
  }
}

Comments

0
var inpObj = document.getElementsByTagName('input');
for(var i in inpObj){
   if(inpObj[i].type == "text"){
         alert(inpObj[i].value);
    }
}

This code will alert all the input textfields.

1 Comment

Your method of iterating is potentially dangerous, e.g. Object.prototype.gotcha = { type: "text", value: "not an actual value" }. This is rather rare though :)
0

It looks like you want to do form validation. For form validation in HTML5, check this resource out: http://www.the-art-of-web.com/html/html5-form-validation/

Basically, you will be able to get by with some validations just by using HTML attributes, and without using JavaScript.

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.