c# - 动态获取js文件中的基本url

标签 c# asp.net javascript

我想在网络服务(.asmx 文件)中运行函数

    $.ajax({
        type: "POST",
        contentType: "application/json; charset=utf-8",
        url: '/Admin/WebSrvcs/Management.asmx/f_SearchLabel',
        data: "{_sQuery:'" + obj.value + "'}",
        dataType: "json",

但我不知道 js 文件中的根 url(http://localhost:4399/VirDir 或其他可能的地址)地址在哪里。我需要到达应用程序的根文件夹才能找到 asmx 文件。

    $.ajax({
        type: "POST",
        contentType: "application/json; charset=utf-8",
        url: 'http://localhost:4399/virDir/Admin/WebSrvcs/Management.asmx/f_SearchLabel',
        data: "{_sQuery:'" + obj.value + "'}",
        dataType: "json",

我正在使用 Visual Studio 2008 并使用 C# 构建网站。

任何帮助将不胜感激

最佳答案

如果您使用的是母版页,那么这会很方便:

在母版页的头部:

<script type="text/javascript">
    var baseUrl = '<%# ResolveUrl("~/") %>';

    function ResolveUrl(url) {

        if (url.indexOf("~/") == 0) {
            url = baseUrl + url.substring(2);
        }

        return url;
    }

</script>

在母版页 .cs 页面中:

    protected void Page_Load(object sender, EventArgs e)
    {
        Page.Header.DataBind();
    }

然后在你的 javascript 中:

ResolveUrl("~/Admin/WebSrvcs/Management.asmx/f_SearchLabel")

关于c# - 动态获取js文件中的基本url,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2539837/

相关文章:

javascript - 如何对多个元素使用悬停速度

c# - itextsharp.xmlworker 可以渲染嵌入的图像吗?

c# - 将属性添加到 TreeNode

javascript - 良好的 UI 允许用户将字段恢复为默认值

javascript - 如何对齐选项卡 - materialize.js?

javascript - Laravel 在 JavaScript 中的链接

c# - 如何将 Primitive[] 转换为 byte[]

c# - 如何使用 LINQ 查找字典列表中每个键的最大值?

c# - 异步导致调试器跳转

javascript - 从 javascript 添加 ASP.Net 标签,为什么会起作用?