jQuery + ASP.NET WebForms +主页

发布于 2024-10-29 04:49:48 字数 861 浏览 2 评论 0原文

早上好, 我在使用 MasterPage 和 jQuery 时遇到问题。我使用带有自定义主题的 jQuery UI,并且我喜欢所有按钮的集合设计来设计 jQuery UI 按钮。 在 MasterPage 中,有:

<script src="js/jquery-1.4.4.min.js" type="text/javascript"></script>
<script src="js/jquery-ui-1.8.10.custom.min.js" type="text/javascript"></script>
<script src="js/i18n/jquery-ui-i18n.js" type="text/javascript"></script>
<script type="text/javascript">
    $(document).ready(function() {

        // destroy all dialogs
        $('#dialog:ui-dialog').dialog('destroy');

        // set buttons
        $('input:submit, button').button();

    });
</script>

在默认的 aspx 页面上,我有一个 asp:Button,它看起来像 jQuery UI 按钮。但在目录中的其他 aspx 页面中,我有一些 asp:TextBox 和一个 asp:Button ,但出现错误: Microsoft JScript - 运行程序时出错:属性 $ 具有 Null 值或未定义。属性不是函数的对象。 而且按钮不像 jQuery UI 按钮。 怎么了? 谢谢您,祝您有愉快的一天。

Good morning,
I have problem with using MasterPage and jQuery. I using jQuery UI with custom Theme and I'll like set design of all buttons to design jQuery UI buttons.
In MasterPage a have:

<script src="js/jquery-1.4.4.min.js" type="text/javascript"></script>
<script src="js/jquery-ui-1.8.10.custom.min.js" type="text/javascript"></script>
<script src="js/i18n/jquery-ui-i18n.js" type="text/javascript"></script>
<script type="text/javascript">
    $(document).ready(function() {

        // destroy all dialogs
        $('#dialog:ui-dialog').dialog('destroy');

        // set buttons
        $('input:submit, button').button();

    });
</script>

On default aspx page i have one asp:Button and it's looks like jQuery UI button. But in other aspx page in directory I have some asp:TextBox and one asp:Button and I have got error:
Microsoft JScript - error in run program: Property $ has Null value or isn't defined. Property isn't object of Function.
And button not see like jQuery UI button.
What's wrong?
Thank you and have a nice day.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

哭了丶谁疼 2024-11-05 04:49:48

编辑:
像这样包含您的脚本:

<script type="text/javascript" src="<%=ResolveUrl("~/js/jquery-1.4.4.min.js")%>" > </script>

或使用绝对路径

<script type="text/javascript" src="/js/jquery-1.4.4.min.js"></script>

Edit:
Include your scripts like this:

<script type="text/javascript" src="<%=ResolveUrl("~/js/jquery-1.4.4.min.js")%>" > </script>

Or use absolute path

<script type="text/javascript" src="/js/jquery-1.4.4.min.js"></script>
慵挽 2024-11-05 04:49:48

最可能的原因是 jQuery 脚本尚未下载 - 可能是由于路径错误(如 dioslaska 提到的)。

我想我应该提到一些调试它并看看它是否正确的好方法。

第一种是使用诸如 Fiddler (免费)或优秀的 HttpWatch(不幸的是不是免费的)。这两个都可以让您查看发送到浏览器的每个请求。如果其中任何脚本无法下载,您将看到一条错误(如果由于找不到它们而无法下载,则会显示 404 错误代码)。

或者,查看呈现的网页的源代码并找到与 jquery-1.4.4.min.js 的脚本标记相对应的行。将源中的 url 剪切并粘贴到新的浏览器窗口中(如果是相对路径,请不要忘记在前面添加“http://myserver/”位)。该页面是否可以在浏览器中正确下载?如果不是——它几乎肯定是罪魁祸首。

一旦您知道哪些内容没有下载,您就可以开始识别路径有什么问题,并且可以修复和测试它们。

通过这种方式,您可以调试包含的文件(无论是脚本、CSS、图像还是其他任何内容)未下载的此类错误。

The most likely cause is that the jQuery script has not downloaded - probably due to a bad path (as mentioned by dioslaska).

I thought I'd mention a couple of good ways to debug this and see if it is correct.

The first is to use a tool such as Fiddler (free) or the excellent HttpWatch (not free unfortunately). Both of these let you se each request coming down to the browser. If any of these scripts are failing to download, you'll see an error (with a 404 error code if they are failing to download because they cannot be found).

Alternatively, view the source of your rendered web page and find the line that corresponds to you script tag for jquery-1.4.4.min.js. Cut and paste the url from the source into a new browser window (if it is a relative path, don't forget to prepend the "http://myserver/" bit). Does this page download correctly in the browser? If not - it is almost certianly the culprit.

Once you know what isn't downloading, you can start idenitfying what is wrong with the paths, and you can fix and test them.

In this way, you can debug these sort of errors where included files (be they scripts, css, images or anything else) are not being downloaded.

述情 2024-11-05 04:49:48

我的疑问是你的 aspx 页面中的空头。

删除这个空结构

<asp:Content ID="cphHead" ContentPlaceHolderID="head" Runat="Server">
</asp:Content>

My doubt is the empty head in your aspx page.

Remove this empty structure:

<asp:Content ID="cphHead" ContentPlaceHolderID="head" Runat="Server">
</asp:Content>
甜味超标? 2024-11-05 04:49:48

工作解决方案:

HtmlGenericControl jQuery = new HtmlGenericControl("script");
jQuery.Attributes.Add("type", "text/javascript");
jQuery.Attributes.Add("src", this.ResolveClientUrl("~/js/jquery-1.5.1.min.js"));
Page.Header.Controls.Add(jQuery);

不太干净,但它正在工作!

working solution:

HtmlGenericControl jQuery = new HtmlGenericControl("script");
jQuery.Attributes.Add("type", "text/javascript");
jQuery.Attributes.Add("src", this.ResolveClientUrl("~/js/jquery-1.5.1.min.js"));
Page.Header.Controls.Add(jQuery);

not so clean, but it's working!

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文