javascript - 使用 Javascript 在另一个页面上引用变量。

标签 javascript jquery asp.net

我目前正在研究一种管理方法,以便能够保存某些文本并将其显示在另一个页面上。

目前,“管理”页面中的默认值是从其他页面引用的。这是一个简单的页面:

<asp:TextBox Text="Testing jQuery method" ID="TextBox" runat="server"/>
<asp:CheckBox Checked = "true" ID="CheckBox" runat="server" />  

现在,引用这些字段的页面实际上是一个简单的 HTML 文件,所以我尝试使用 jQuery 来引用这些字段。我正在尝试使用 jQuery ajax 调用,但我似乎无法使其正常工作。

<script type="text/javascript" src="Scripts/jquery-1.4.1.js">
var asp_checked;
var asp_text;

try {
    jQuery.ajax({
        url: '~/About.aspx',
        success: function (response, status, xhr) {
            if (status != "error") {
                asp_checked = $('#CheckBox', response).text();
                asp_text = $('#TextBox', response).text();
            }
            else { asp_text = "Error in jQuery Call"; }
        },
        async: false
    });
    document.write(asp_text);
        }
catch (err) {
    document.write("The jQuery is not working");
}
</script>

注意事项:
1. 总的来说,我对 jQuery 了解不多。
2. 我不能使用cookies(我不认为)。这将在我们的公司内部网上发布公告等。
3. jQuery 代码取自 SO,但我不记得问题引用。当我这样做时,我会在这里更新。

最佳答案

因为它是一个 ASP 控件,请记住 ASP 喜欢为控件创建自己的(“相对”)ID。类似于 <asp:CheckBox id="cb" />可以转入<input type="checkbox" id="SomeContainer_foo$cb" />一旦它到达最终结果页面。 (这意味着使用 $('#cb') 不再有效,因为控件 ID 中现在包含所有其他信息)

你的选择?

  1. 通过设置 ClientIdMode 将您的控件更改为使用静态 ID在控件上。这会使您在 ASP 标记中用作 ID 的任何内容都传输到 HTML 页面。
  2. 将 jQuery 中的选择器更改为如下所示:$('[id$=cb]') ($= 表示“结束于”)

关于javascript - 使用 Javascript 在另一个页面上引用变量。,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7149628/

相关文章:

asp.net - EF 使用代码优先和一对多关系创建重复的外键

javascript - 如何有效地构建这个数组?

javascript - AngularJS 应用程序 : Load data from JSON once and use it in several controllers

jquery - tinyMCE 与 nicEdit?

javascript - 迭代 Json 并获取最后一个元素

javascript - 如何构建复杂且动态的文本框控件? (名称 :value pair)

javascript - Telegraf:无法使用 Markdown 样式回复 inlineButtons

javascript - 为什么时间格式会更改为 00 :00:00 time in UTC 24 hour format to 24:00:00

javascript - 正确使用ajax成功吗?

c# - ASP.net Linq to SQL同时分组和添加?