【发布时间】:2015-12-21 15:27:44
【问题描述】:
编辑问题在底部!!
我想让我的自动完成功能工作,我总是得到这个:
无法修改 Controls 集合,因为该控件包含代码块(即 )。说明:执行当前 Web 请求期间发生未处理的异常。请查看堆栈跟踪以获取有关错误及其源自代码的位置的更多信息。
我的脚本和 html 代码:
<head runat="server">
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title><%--<%= Page.Title %> --%>- Ticketsystem</title>
<link href="~/Content/master.css" rel="stylesheet" type="text/css" />
<asp:PlaceHolder runat="server">
<%: Scripts.Render( "~/bundles/modernizr") %>
</asp:PlaceHolder>
<webopt:bundlereference runat="server" path="~/Content/css" />
<link href="~/favicon.ico" rel="shortcut icon" type="image/x-icon" />
<script type="text/javascript" src="http://code.jquery.com/jquery-2.1.4.js"></script>
<script type="text/javascript" lang="ja">
$(function ()
{
$('#tbCompany').autocomplete(
{
source: function (request, response)
{
$.ajax({
url: "Autocomlete.asmx/GetCompanyNames",
data: "{ 'searchTerm': '" + request.term + "' }",
type: "POST",
dataType: "json",
contentType: "application/json;charset=utf-8",
success: function (result) {
response(result.d);
},
error: function (result) {
alert('There is a problem processing your request');
}
});
},
minLength: 0
});
});
</script>
</asp:PlaceHolder>
</head>
<body>
<form runat="server">
<asp:TextBox ID="tbCompany" runat="server" Style="margin-top:10px" ClientIDMode="static"></asp:TextBox>
我不知道我的脚本是错误的还是缺少某些东西。我试着把它放在我页面的末尾,放在一个 div 或占位符中,就像其他问题所建议的那样。
编辑:现在我几乎按照您的建议做了所有事情,现在看起来像上面和下面的错误。
错误:
未捕获的类型错误:$(...).autocomplete 不是函数
【问题讨论】:
-
您是否尝试将
<%:更改为<%=? -
你是用模板系统还是jsp来渲染html?
<%: Page.Title %>不是 html 的标准标签,因此您应该在帖子中编辑并指定它。我认为您需要注意#<%=tbCompany.ClientID%>将如何在最终的 html 中呈现并替换该标签中呈现的这个选择器 -
您使用的是asp.net mvc 还是传统的.net?将
<%: Page.Title %>更改为<%= Page.Title %> -
它是一个 asp.net 网页,所以我唯一做的就是添加我的脚本,这意味着 已经存在,我不明白你的意思 sry
-
我用我得到的错误编辑了我的问题
标签: javascript c# jquery html asp.net