我有以下html,当我预览页面时,我收到以下错误:
无法在element.nodeName = input和上创建checkboxradio element.type =文本
<head runat="server">
<title></title>
<link rel="stylesheet" href="//code.jquery.com/ui/1.12.1/themes/base/jquery-ui.css" />
<script src="https://code.jquery.com/jquery-1.12.4.js"></script>
<script src="https://code.jquery.com/ui/1.12.1/jquery-ui.js"></script>
<script>
$(function () {
$("input").checkboxradio();
});
</script>
</head>
<body>
<form action="#">
<label for="cbxForRent">For Rent</label>
<input type="checkbox" id="cbxForRent" />
<input type="text" id="txtZipCode" />
</form>
</body>
如果我删除
<input type="text" id="txtZipCode" />
它会正常工作。我认为jquery试图用textbox
做一些事情。
解决此问题的最佳方法是什么?
答案 0 :(得分:9)
jQuery UI checkboxradio
插件适用于仅带标签的复选框,而不是文本输入,$('input')
定位两个标签,确保只定位复选框,jQuery UI将不再抛出尝试将文本输入转换为单选按钮时的错误
$(function () {
$("#cbxForRent").checkboxradio();
});
您还可以使用
定位页面上的所有复选框$('input[type="checkbox"]')
或给他们一个共同的课程来定位他们等。