0

我的表单视图中有一个复选框,我想在 JS 中访问它以对文本框进行一些启用/禁用。这就是我所拥有的:

 <script type="text/javascript">
     $(document).ready(function () {              
         $('#<%=FormView1.FindControl("chkMap").ClientID%>').change(function () {
             if ($(this).is(":checked")) {                                               
             }
             $('#textbox1').val($(this).is(':checked'));
         });             
 });

使用此代码,什么都不会发生,并且在 firebug 控制台中不会显示任何错误。难道我做错了什么?谢谢,拉齐尔

4

1 回答 1

0

我有几个猜测。第一个可能是错误的,但我必须指出。您发布的代码没有结束脚本 ( </script>) 标记。你应该先检查一下。

第二个猜测是,由于某种原因,<%=FormView1.FindControl("chkMap").ClientID%>这可能不会输出该控件的 ID。您是否尝试过“查看该页面的来源”并确保 ID 是应有的?也许您已经更改了该复选框的 ID 或其他内容。

第三个猜测是您引用文本框 ( #textbox) 的方式。这是一个 ASP.NET WebForms 页面。您的复选框是一个服务器控件 ( <asp:CheckBox ... />)。你确定你没有像这样创建文本框<asp:TextBox runat="server" ID="textbox1" />吗?如果有,则需要编写如下代码:

$('#<%=FormView1.FindControl("textbox1").ClientID%>').val($(this).is(':checked'));

通过 JavaScript 引用该文本框控件。

我建议所有这些,因为 JS 代码工作正常。我创建了一个 JSFiddle 并对其进行了测试。

这是小提琴。关联

于 2013-11-05T19:54:58.543 回答