2014-04-14 3 views
0

내 이해에 따르면 this.form은 전체 양식 객체를 보냅니다. 나는이 양식자바 스크립트 : 양식 객체의 필드에 액세스하는 방법

<form name ="bannerForm" method="post"> 
<table> 
    <tr> 
     <td>Enter banner message</td> 
     <td><input class="messagebannner" type="text" id="bannerMessage" name="bannerMessage" size="40" onblur="validateEmptyFields(this);"></td> 
     <td><span name="messageBanner" id="messageBanner"></span></td> 
    </tr> 

을하고 난 동적 범위 태그의 값을 변경하고 싶은 나는 validateEmptyField() 함수에서 ID를 하드 코딩하지 않고 그것을 할 노력하고 있어요. 이것을 어떻게 할 수 있습니까? 정말 가능하니? 양식 개체가이 점에서 도움이 될 수 있습니까 ??

function validateEmptyFields(inputField){ 
    if(inputField.value.length === 0){ 

//show error message in span 
     return false 
    } 
    else { 
    return true; 
} 
} 
+0

어떤 값을 ''에 주입하려고합니까? – Kehlan

+0

그냥 일부 텍스트를 표시하고 싶습니다 – Insafian

+0

* * 텍스트 *? – Kehlan

답변

-1
(없이 행할 수도 있지만, 쉽게) 당신은 어떤 jQuery를 마법을 할 수

$(inputField).parent().next().children('span').text(your text here); 
+0

jQuery와 관련된이 질문에 아무것도 표시되지 않지만 작동합니다. – Kehlan

+0

글쎄 - 당신은 그것없이 할 수 있습니다. 그러나 나는 그것을 쓸 기분이 아니었다. ^^ – Fuzzyma

+0

나는 자바 스크립트를 통해 그것을하고 싶다. – Insafian

0

양식이 같은 양식 필드에 액세스 할 수 있습니다 이 validateEmptyField() 함수입니다.

//form acccess 
document.forms["my_form_name"]; 
//fields access 
document.forms["my_form_name"]["input_name"]; 
+1

이름이 유효한 식별자 인 경우 도트 속성을 사용할 수도 있습니다. 예를 들어 위의 예는'var form = document.forms.my_form_name'과'form.input_name'입니다. – RobG

0

양식 검증 방법에 약간의 개선이 필요합니다.

this W3Schools page on JavaScript form validation을 확인하십시오. 일단 당신이 그것의 개념을 얻으면 꽤 쉽습니다.

HTML 및 JavaScript는 약간 조정 한 후에 다음과 같이 표시됩니다.

HTML :

<form id="bannerForm" name="bannerForm" method="post"> 
    <table> 
     <tr> 
      <td>Enter banner message</td> 
      <td> 
       <input class="messagebannner" type="text" 
        name="bannerMessage" size="40" onblur="validateBannerForm();" /> 
      </td> 
      <td> 
       <span id="messageBanner"></span> 
      </td> 
     </tr> 
    </table> 
</form> 

자바 스크립트 :

function validateBannerForm() { 
    var x = document.forms["bannerForm"]["bannerMessage"]; 
    if (x.value == null || x.value == "") { 
     document.forms["bannerForm"]["messageBanner"].value = "This is an error message."; 
     return false; 
    } 
} 

개인적으로 전혀 검증이 방법을 좋아하지 않지만, 이해하기 간단하고 목적에 맞게 보인다. JavaScript 및 HTML 양식의 경우 다른 유효성 검사 방법을 연구 할 것입니다.

+1

폼 컨트롤의 값이 항상 문자열로 반환되고 빈 문자열을 포함한 모든 문자열이 * null *과 같지 않으므로 테스트'x.value == null'은 true가 아닙니다. 제발 w3Schools를 참조하지 마세요. MDN [데이터 양식 유효성 확인] (https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/Forms/Data_form_validation) 문서는 많이 있습니다. 보다 나은. – RobG

관련 문제