js에서 값을 얻으려면 form.xx.value 또는 form.all.xx.value를 사용할 수 있습니다. 그렇다면 이들의 차이점은 무엇입니까?
저는 원래 all을 추가한다는 것은 xx를 모두 형식으로 가져와서(같은 이름의 요소가 여러 개 있는 경우) 배열을 반환하는 것이라고 생각했습니다. 나중에 인터넷에서 검색해 보니 이것이 아닙니다.
all은 양식의 모든 요소를 나타냅니다. 즉, form.all은 div, table 등을 포함하여
태그에 포함된 모든 요소에 액세스할 수 있습니다. .xx는 입력, 선택 등과 같은 양식 요소에만 액세스할 수 있습니다.
테스트 내용은 다음과 같습니다.
form.xx는 text1 및 text2(양식 요소, 이름 및 ID에 공통)에만 액세스할 수 있는 반면 form.all.xx는 text1, text2 및 div1에 액세스할 수 있습니다.
양식 요소의 경우 이름과 ID가 공통입니다. 예를 들어 위에서 form.text1과 form.all.text1은 동일합니다.
비양식 요소는 form.all.xx를 통해서만 액세스할 수 있습니다(xx는 ID입니다). form.all을 생략할 수도 있습니다. 즉, xx를 직접 사용할 수 있습니다.
참고: 양식 요소에 액세스할 때 xx가 여러 개인 경우 form.xx 및 form.all.xx는 배열을 반환합니다.
비양식 요소의 경우 여러 개가 있는 경우 동일한 ID를 가진 두 요소입니다. form.all.xx는 첫 번째 요소를 나타내고 나머지는 무시됩니다.