如何通过Javascript检查CheckBoxList的值

时间:2013-04-19 02:38:02

标签: c# javascript asp.net webforms checkboxlist

--------------------------------------------
Phone number  : ________________________
Email Address : ________________________
You prefer to receive the notification by:
[ ] SMS [ ] Email 
--------------------------------------------

这是我在.aspx页面中的内容(我无法发布图片),两个文本框和两个复选框。这些复选框是数据绑定的复选框,其中“SMS”和“电子邮件”是当前数据库中的两个可用值。

        ckBxPreferredMethod.DataSource = dt;
        ckBxPreferredMethod.DataTextField = "Text";
        ckBxPreferredMethod.DataValueField = "Value";
        ckBxPreferredMethod.DataBind();

我现在要做的是,使用 customvalidator 和JavaScript(客户端验证),我想确保如果用户只检查短信和电子邮件复选框,他们必须分别填写他们的电话号码和电子邮件地址。如果他们没有取消选中短信,“电话号码”是一个可选字段。

我更喜欢C#,因为我使用JavaScript,所以我在服务器端使用以下方法完成了这个:

        protected void ckBxPreferredMethod_ServerValidate(object sender, ServerValidateEventArgs e)
    {
        if(ckBxPreferredMethod.SelectedValue == "1" && String.IsNullOrEmpty(txtHPNo.Text.Trim()))
        {
            e.IsValid = false; 
            CVemailAndSMS.ErrorMessage = "You need to enter your phone number if you want to receive by SMS"; 
        }

        if(ckBxPreferredMethod.SelectedValue == "2" && String.IsNullOrEmpty(txtEmail.Text.Trim())) 
        {
            e.IsValid = false; 
            CVemailAndSMS.ErrorMessage = "You need to enter your email if you want to receive by email"; 
        }
    }

上述方法运行正常。但由于我的程序进一步复杂化,我将不得不移动这个客户端。所以JavaScript是必需的。

如果这涉及静态复选框,我就不会遇到问题。但是对于数据绑定复选框,我只是错过了如何检查所选复选框的值。

谢谢。

1 个答案:

答案 0 :(得分:0)

您需要添加更多信息才能获得合适的答案。

我认为你想开始使用JavaScript开始研究条件验证

@SEE:http://www.users.muohio.edu/klumbca/examples/conditional-validation-example.html?hearabout=Newspaper+Ad&hearabout_other=

请注意,如果您标记了“其他”,您只需要输入文本吗?

不保证使用的插件,但它应该指向正确的方向。