Javascript 未在服务器控制 ASP.Net 上运行

Posted

技术标签:

【中文标题】Javascript 未在服务器控制 ASP.Net 上运行【英文标题】:Java Script not running on server control ASP.Net 【发布时间】:2017-06-15 16:45:22 【问题描述】:

我想在 asp:TextBox 控件上使用 jQuery-UI 日期选择器。 这是我的脚本语法:

<script> $(function()$document.getElementById('<%txtvBdayEd.ClientID%>').datepicker(dateFormat: "yy-mm-dd");
        );
</script>

它不工作,我很好奇这不正确吗?

我的id来自于

<asp:Textbox id="txtvBdayEd" CssClass="txtBoxes"  runat="server" Text="PlaceHolder"></asp:Textbox>

【问题讨论】:

你的元素选择器在我看来很奇怪。 'getElementById('')' 真的有一个 id 属性为 '' 的 DOM 元素吗? 不应该是 @cobolstinks 在服务器上进行评估和打印 要查看生成的 html 是否正确,您应该使用浏览器开发工具检查元素。 尝试$('#&lt;%=txtvBdayEd.ClientId%&gt;').datepicker.. 或将$document 更改为$(document。检查浏览器控制台是否有错误 【参考方案1】:

您在生成客户端 ID 的 ASP.NET 代码中存在轻微的语法错误,并且您混淆了用于获取元素的 jQuery 和标准 JS 语法。

ASP 位在

$("#<%=txtvBdayEd.ClientID%>").datepicker( dateFormat: 'yy-mm-dd' );

应该可以正常工作。

【讨论】:

我只想在解决方案中添加一个小改动 ClientId 应该是 ClientID 因为它区分大小写.. @TommyMcGee 完成,谢谢。我使用 ASP.NET Forms 已经有一段时间了,你很快就会忘记这些小细节!

以上是关于Javascript 未在服务器控制 ASP.Net 上运行的主要内容,如果未能解决你的问题,请参考以下文章

win7+iis7.5+asp.net下 CS0016: 未能写入输出文件“c:WindowsMicrosoft.NETFrameworkv2.0.50727Temporary ASP.NE

在 Asp.Net Core 中使用 Swagger 在请求中未发送授权承载令牌

JavaScript EventSource SSE 未在浏览器中触发

跟我学ASP.NET MVC之十一:URL路由

Jmeter 中的记录控制器未在 localhost Web 服务器中记录

WebApi 未在控制器上找到操作