无法在element.nodeName = input和element.type = text上创建checkboxradio

FLI*_*KER 4 html javascript jquery jquery-ui

我有以下html,当我预览页面时,我收到以下错误:

无法在element.nodeName = input和element.type = text上创建checkboxradio

<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>
Run Code Online (Sandbox Code Playgroud)

如果我删除

<input type="text" id="txtZipCode" />
Run Code Online (Sandbox Code Playgroud)

它会正常工作.我认为jquery试图用它做点什么textbox.

解决此问题的最佳方法是什么?

ade*_*neo 10

jQuery UI checkboxradio插件适用于仅带标签的复选框,而不是文本输入,并且$('input')定位两个标签,确保仅定位复选框,并且jQuery UI在尝试将文本输入转换为单选按钮时将不再抛出错误

$(function () {
    $("#cbxForRent").checkboxradio();
});
Run Code Online (Sandbox Code Playgroud)

您还可以使用页面上的所有复选框作为目标

$('input[type="checkbox"]')
Run Code Online (Sandbox Code Playgroud)

或者给他们一个共同的课程来瞄准他们等.

  • 或者旧的备用 [`$('input:checkbox')`](http://api.jquery.com/checkbox-selector/).... (2认同)