我有一个与FBJS的表单验证问题,在Facebook应用程序上使用。我查看了文档中的验证示例,可以使用form.serialize()检查文本框值;但不幸的是,我不知道如何检查dropdown和checkbox的值。
提前谢谢..
发布于 2009-12-11 15:03:37
对于复选框和单选按钮,使用如下代码:
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
}我个人不会在facebook验证中使用serialize,我只使用上面的简单代码。
谢谢,希望这能帮上忙。
发布于 2010-01-30 00:27:36
我发现了一个方法,虽然不是很优雅,但它很简单,而且使用serialize()可以很好地工作。
我的表单代码片段:
<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="">FBJS需要让它工作:
<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标记,以便为选定的标记值返回"“,为单选按钮返回一个"”。我添加了一个隐藏输入,并将其命名为与单选按钮相同的名称,以便将其数据添加到返回的数组中。在条件中使用"“值来检查和说明这些字段是否为空,给表单发送信息到服务器的ok。我希望这能帮到你。
https://stackoverflow.com/questions/1880256
复制相似问题