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/