리자

How to get and set form element values with jQuery

· 2008-11-19 (수) 17:45:43 · 4432

jQuery is a Javascript framework which can simplify coding Javascript for a website and removes a lot of cross browser compatibility issues. This post looks at how to get and set the values of HTML form elements with jQuery.

Getting a form value with jQuery

To get a form value with jQuery use the val() function. Let's say we have a form like this, using an id for each form element:

<input name="foo" id="foo" type="text">

<select name="foo" id="bar">
    <option value="1">one</option>
    <option value="2">two</option>
    <option value="3">three</option>
</select>

We can display an alert for the values of "foo" and "bar" as easily this:

window.alert( $('#foo').val() );
window.alert( $('#bar').val() );

If we're using the name only and not specifying an id, the jQuery to get the form values would be this:

window.alert( $('[@name=foo]').val() );
window.alert( $('[@name=bar]').val() );

If you have a group of radio buttons and want to get the selected button, the code is slightly different because they all have the same name. Using the above code examples will show the value for the first radio button on the form with that name. To find out the value of the checked one, do this instead:

HTML:

<input type="radio" name="baz" value="x">
<input type="radio" name="baz" value="y">
<input type="radio" name="baz" value="z">

jQuery:

window.alert($('input[@name=baz]:checked').val());

Setting a form value with jQuery

You can set the form values with jQuery using the same val() function but passing it a new value instead. Using the same example forms above, you'd do this for the text input and select box:

$('#foo').val('this is some example text');
$('#bar').val('3');
OR
$('[@name=foo]').val('this is some example text');
$('[@name=bar]').val('3');

Using the above for a radio button will change the actual value of the radio button rather than changing the one that is selected. To change the radio button that is selected you'd do this:

$('input[@name="baz"]')[0].checked = true;

[0] would set the first one checked, [1] would set the second one checked and so on.

[이 게시물은 관리자님에 의해 2011-10-31 16:55:28 jQuery에서 이동 됨]
|
댓글을 작성하시려면 로그인이 필요합니다.

개발자팁

5,403건

개발과 관련된 유용한 정보를 공유하세요. 질문은 QA에서 해주시기 바랍니다.

+
분류 제목 글쓴이 날짜 조회
기타 08-04-17 조회 3,074
기타 08-04-17 조회 3,233
JavaScript 08-04-17 조회 2,750
JavaScript 08-04-17 조회 3,156
기타 08-04-17 조회 2,537
기타 08-04-17 조회 3,129
JavaScript
[JavaScript]
08-04-17 조회 2,230
MySQL 08-04-17 조회 5,073
MySQL 08-04-17 조회 6,336
MySQL 08-04-17 조회 4,069
MySQL 08-04-17 조회 1.5만
JavaScript 08-04-17 조회 5,061
기타 08-04-17 조회 6,217
Flash 08-04-17 조회 5,365
PHP 08-04-17 조회 5,521
기타 08-04-17 조회 7,602
JavaScript 08-04-17 조회 5,870
JavaScript 08-04-17 조회 4,844
MySQL 08-04-17 조회 5,042
JavaScript
[JavaScript]
08-04-17 조회 4,285
기타 08-04-17 조회 5,206
MySQL 08-04-17 조회 4,580
기타 08-04-17 조회 4,015
기타 08-04-17 조회 4,392
JavaScript 08-04-17 조회 3,210
JavaScript 08-04-17 조회 3,613
JavaScript 08-04-17 조회 9,011
JavaScript 08-04-17 조회 3,660
MySQL 08-04-09 조회 3,451
정규표현식 08-04-08 조회 4,331