FBJS에서 Facebook 응용 프로그램에 사용할 양식 검증 문제가 있습니다. 문서에 대한 유효성 검사 예제를 확인하고 form.serialize()로 텍스트 상자 값을 확인할 수 있습니다. 하지만 불행히도 나는 드롭 다운과 체크 박스 값을 체크하는 방법을 알 수 없었다. 사전에FBJS로 양식 유효성 확인
감사합니다 .. 체크 박스 및 라디오 버튼의
FBJS에서 Facebook 응용 프로그램에 사용할 양식 검증 문제가 있습니다. 문서에 대한 유효성 검사 예제를 확인하고 form.serialize()로 텍스트 상자 값을 확인할 수 있습니다. 하지만 불행히도 나는 드롭 다운과 체크 박스 값을 체크하는 방법을 알 수 없었다. 사전에FBJS로 양식 유효성 확인
감사합니다 .. 체크 박스 및 라디오 버튼의
다음과 같은 코드를 사용
if (document.getElementById("checkbox_or_radio_button_id_here").getChecked() == true)
{
// yes it was checked
}
드롭 다운의 경우 :
if (document.getElementById("dropdown_id_here").getValue() != '')
{
// yes dropdown was not empty
}
개인적으로 페이스 북에 직렬화 사용하지 않는 유효성 검사, 난 그냥 위의 간단한 코드를 사용합니다.
감사합니다. 도움이 되길 바랍니다.
매우 우아하지는 않지만 간단하고 serialize()를 사용하면 꽤 잘 작동하는 메서드를 발견했습니다.
내 폼 코드 다음 FBJS 얻을 필요가
<select name="state" id="states" class="required">
<option value=""></option>
<option value="AL">Alabama</option>
<option value="AK">Alaska</option>
<option value="AZ">Arizona</option>
<option value="AR">Arkansas</option>
</select>
<input value="radio1" type="radio" name="radioPicks" class="radio"/>
<input value="radio2" type="radio" name="radioPicks" class="radio"/>
<input value="radio3" type="radio" name="radioPicks" class="radio"/>
<input type="hidden" name="radioPicks" value="">
이 작동합니다 :
<script type="text/javascript">
<!--
function checkForm(form) {
var params=form.serialize();
if (params.state.length>0 && params.radioPicks!="")
return true;
else
var myDialog = new Dialog(Dialog.DIALOG_POP);
myDialog.showMessage('Almost Done!', 'Please complete all fields', button_confirm='Close');
return false;
}
-->
</script>
이 검증 방법의 핵심은은 ""를 반환하는 빈
option
태그에 의존
선택된 태그 값과 라디오 버튼에 대한 ""를 표시합니다. 숨겨진 입력을 추가하고 라디오 버튼과 동일한 이름을 지정하여 반환 된 배열에 데이터를 추가했습니다. 조건부에서 ""값을 사용하여 확인하고이 필드가 비어 있지 않으면 서버에 정보를 보낼 수있는 양식을 제공합니다. 이게 도움이 되길 바란다.
나는 간단한 코드도 사용하고 있습니다. 나는 왜 내가 오류로 제출할 때, 대화를 얻고 양식이 앞으로 나아가 어쨌든 제출 하는지를 알 수 없다.
//.... var txt ='Enter Zipcode'; function setError(){ var obj=document.getElementById('mapsearch'); obj.setValue(txt); obj.setStyle('color', 'red'); } function valform(){ var obj=document.getElementById('mapsearch'); var val = obj.getValue(); if(val!='' && !isNaN(val) && val.length>2){ return true; } else { setError(); (new Dialog()).showMessage('Zip Required', 'Please enter your zip code.'); return false; } } ...
그래! 이것은 훨씬 더 잘 작동합니다 ... –