Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/455.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# jQuery中页面中的多个用户控件_C#_Javascript_Jquery_Asp.net_User Controls - Fatal编程技术网

C# jQuery中页面中的多个用户控件

C# jQuery中页面中的多个用户控件,c#,javascript,jquery,asp.net,user-controls,C#,Javascript,Jquery,Asp.net,User Controls,我有一个用户控件,其中有一个文本框。我在这个文本框中使用jQuery自动填充 当我在页面上多次使用此用户控件时,它不起作用。我知道这是因为重复了textbox的ID,但我不知道如何解决这个问题。请帮帮我 这是我的用户控制 <%@ Control Language="C#" AutoEventWireup="true" CodeBehind="Classes.ascx.cs" %> <asp:TextBox ID="txtClass" placeholder="searc

我有一个用户控件,其中有一个
文本框
。我在这个文本框中使用jQuery自动填充

当我在页面上多次使用此用户控件时,它不起作用。我知道这是因为重复了
textbox
的ID,但我不知道如何解决这个问题。请帮帮我

这是我的用户控制

    <%@ Control Language="C#" AutoEventWireup="true" CodeBehind="Classes.ascx.cs" %>
<asp:TextBox ID="txtClass" placeholder="search Class" type="text" runat="server" EnableViewState="true"
    ClientIDMode="Static" Width="250px" OnTextChanged="txtClass_TextChanged"></asp:TextBox>


<script language="javascript">

    $(function () {

        $("#txtClass").autocomplete({
            source: function (request, response) {
                var oClass = $("#txtClass").val().replace('*', '');
                .
                .
                .
                .
                }
            });
        }

$(函数(){
$(“#txtClass”).autocomplete({
来源:功能(请求、响应){
var oClass=$(“#txtClass”).val().replace('*','');
.
.
.
.
}
});
}
更新

这里是html

    <input name="ctl00$BodyContent$txtClassasd$txtClass" id="txtClass" placeholder="search Class" type="text" style="width:250px;" />

<script language="javascript">

    $(function () {

        $("#txtClass").autocomplete({
            source: function (request, response) {
                var test = document.getElementById("txtClass").value;
                var oClass = $("#txtClass").val().replace('*', '');



<input name="ctl00$BodyContent$Classes1$txtClass" id="txtClass" placeholder="search Class" type="text" style="width:250px;" />
<script language="javascript">

    $(function () {

        $("#txtClass").autocomplete({
            source: function (request, response) {
                var oClass = $("#txtClass").val().replace('*', '');

$(函数(){
$(“#txtClass”).autocomplete({
来源:功能(请求、响应){
var test=document.getElementById(“txtClass”).value;
var oClass=$(“#txtClass”).val().replace('*','');
$(函数(){
$(“#txtClass”).autocomplete({
来源:功能(请求、响应){
var oClass=$(“#txtClass”).val().replace('*','');

如果您查看发送到浏览器的html,我猜实际上没有ID为“txtClass”的文本框。您应该执行类似于
$(“#”)的操作…
您需要将ClientID用于服务器控件

 $("#<%=txtClass.clientID%>").autocomplete(
$(“#”)自动完成(
同时从txtClass控件中删除clientMode=“Static”

使用ID数组:

或者修改选择器

$("input").autocomplete({...

你的
txtClass
是如何重复的?你能给我们看一下那些代码吗?哦,删除这个属性clientmode=“Static”