ahsteele
ahsteele

Reputation: 26504

jQuery set value only if empty

I am utilizing a modal for setting a default value for a series of text box fields. However, I only want to set the field to the default value if no value already exists. Is there a way to do that with a jQuery selector?

Current Code

var fooVal = $('#cboxLoadedContent').find('#SetFoo').val();
var barVal = $('#cboxLoadedContent').find('#SetBar').val();
$('.foo').val(fooVal);
$('.bar').val(barVal);

Upvotes: 3

Views: 5976

Answers (3)

Sampson
Sampson

Reputation: 268344

You could use :text[value=''] to find all empty textfields.

Upvotes: 0

Manjula
Manjula

Reputation: 5091

$("input.foo[type=text][value='']").val(fooVal);
$("input.bar[type=text][value='']").val(barVal);

If your class has used for other type of inputs, then code should look like above code for ensuring only empty text boxes which has given class are affected by the code.

Upvotes: 1

prodigitalson
prodigitalson

Reputation: 60413

$(".foo[value='']").val(fooVal);

EDIT: As mentioned by Jonathan if youre using more than text inputs for this youre going to need to be a little more advanced... particularly with select tags, but also checkboxes, radios and textareas.

Upvotes: 11

Related Questions