asp.net - 带有 <asp :checkbox/> 的 Javascript 复选框

标签 asp.net javascript

Javascript 复选框脚本 ( by ryanfait ) 在我最初使用时效果很好。然后我需要更改我制作的表单,以便 asp.net 可以处理该表单,但现在复选框是默认的。

有没有办法改变脚本使其在 asp:checkbox 上工作? 我这样调用函数:

$(document).ready(function() {
    $('input[type=checkbox]').checkbox(); 
    });

here是实际的 javascript。

目前我的页面上有两种不同类型的复选框,一种是 <asp:Checkbox ... />和一个<input type="checkbox" ... /> .第二个有样式,asp 复选框没有...

我还没有联系 Ryan Fait,因为我希望这是一个常见的“错误”。

编辑: 脚本的工作方式是,它找到所有带有 class="styled"的元素,将其隐藏,然后在该元素旁边放置一个 span。在我的源代码中,对于 asp:checkbox,我认为这发生得太早了。看:

<input type="checkbox" class="styled" /><span class="styled"><input id="ctl00_contentPlaceHolderRightColumn_newsletter" type="checkbox" name="ctl00$contentPlaceHolderRightColumn$newsletter" /></span>

跨度在那里,可见且全部,它不应该(我相信,因为第一个复选框以我想要的样式显示,第二个没有)。

至此,我找到了部分问题。 javascript 无法以某种方式更改 asp 复选框,但是当我手动添加 javascript 应该创建的跨度时,该复选框不再用作复选框。我在下面的回答中添加了一些细节。

最佳答案

在您的复选框上设置一个 ID,然后通过该 ID 引用它,如下所示:

<asp:checkbox id="mycheck" />

然后像这样引用它:

$('#mycheck').checkbox(); 

如果这不起作用,请执行许多 Web 开发人员之前做过的事情:下载 Firefox,安装 Firebug,然后在控制台中检查您的选择器逻辑。我发现在 Firefox 中开发总是更容易,即使我的目标平台是 IE。

关于asp.net - 带有 <asp :checkbox/> 的 Javascript 复选框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1312176/

相关文章:

asp.net - 通过 VB.NET 向按钮添加点击事件以触发 javascript

javascript - 如何根据光标位置获取文本框的id

asp.net - 不同机器上相同文化的不同 DateTimeFormat

javascript - HTML/Javascript onchange 与 onsubmit 问题

javascript - TinyMce 格式化问题

javascript - 如何使用jquery在asp.net中的 ListView 中查找 "a href"标签

asp.net - jquery $post 帖子页面,但 Request.Form 为 null

javascript - Jquery .append 和链接

javascript - 如何正确访问像这样的javascript "dictionary"

Javascript OOP - 从子类中的闭包访问继承的属性或函数