jQuery를 사용하여 빈 텍스트 상자를 어떻게 식별합니까? 가능한 경우 선택기를 사용하여 수행하고 싶습니다. 또한 이것을 사용하려는 실제 코드에서는 모든 텍스트 입력을 선택하고 싶지 않기 때문에 id를 선택해야합니다.
다음 두 코드 예제에서 첫 번째 코드는 사용자가 텍스트 상자 "txt2"에 입력 한 값을 정확하게 표시합니다. 두 번째 예는 빈 텍스트 상자가 있음을 식별하지만 여기에 입력해도 여전히 비어있는 것으로 간주합니다. 왜 이런거야?
선택 자만 사용하여 수행 할 수 있습니까?
이 코드는 텍스트 상자 "txt2"의 값을보고합니다.
<html>
<head>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script>
<script type="text/javascript">
$(function() {
$('#cmdSubmit').click(function() {
alert($('[id=txt2]').val());
});
});
</script>
</head>
<body>
<form>
<input type="text" name="txt1" id="txt1" value="123" /><br />
<input type="text" name="txt2" id="txt2" value="" /><br />
<input type="text" name="txt3" id="txt3" value="abc" /><br />
<input type="submit" name="cmdSubmit" id='cmdSubmit' value="Send" /><br />
</form>
</body>
</html>
이 코드는 항상 "txt2"텍스트 상자를 비어있는 것으로보고합니다.
<html>
<head>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script>
<script type="text/javascript">
$(function() {
$('#cmdSubmit').click(function() {
if($('[id^=txt][value=""]').length > 0) {
if (!confirm("Are you sure you want to submit empty fields?")) {
if (event.preventDefault) {
event.preventDefault();
} else {
event.returnValue = false;
}
}
}
});
});
</script>
</head>
<body>
<form>
<input type="text" name="txt1" id="txt1" value="123" /><br />
<input type="text" name="txt2" id="txt2" value="" /><br />
<input type="text" name="txt3" id="txt3" value="abc" /><br />
<input type="submit" name="cmdSubmit" id='cmdSubmit' value="Send" /><br />
</form>
</body>
</html>