【问题标题】:edit inner html div编辑内部 html div
【发布时间】:2011-07-14 04:14:07
【问题描述】:

我是初学者

函数 PopupUserRegist() { 结果 = $.ajax({ url: "Default.aspx?cmd=Setting", 异步:假, 完成:函数(){ // 当远程调用返回时解除阻塞 } }).responseText; ; } protected void Page_Load(object sender, EventArgs e) { if (请求["cmd"] == "设置") { div.InnerText = "测试"; //这不会改变内部文本 } } protected void Button2_Click(对象发送者,EventArgs e) { div.InnerText = "test";//这个改变inner text }

当调用 PopupUserRegist();没有变化?

【问题讨论】:

    标签: asp.net html


    【解决方案1】:

    您对 ASP.NET 的控制流感到困惑。

    Page_Load() 在页面生成时发生在服务器端,可以更改即将在 HTML 页面中发送回浏览器的数据。

    当您从 JavaScript 通过ajax() 再次调用 ASPX 时,代码隐藏无法直接接触页面内容,因为它已经位于浏览器上。如果您想更改页面中的数据,您必须让 ASPX 返回一个纯值到 responseText 中的 JavaScript 代码:

    $('#myDiv').text(
        $.ajax({
            url: 'Default.aspx?cmd=Setting',
            async: false
        }).responseText
    );
    

    或者,更好的是,避免不愉快地使用同步 xm​​lhttprequest:

    $.get('Default.aspx?cmd=Setting', function(result) {
        $('#myDiv').text(result);
    });
    

    如果您真的想模糊在客户端和服务器端运行的代码之间的界限,请查看使用 runat="server"、点击事件、回发和视图状态。

    【讨论】:

    • 这个写dd ttp://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd" rel="nofollow" target="_blank">w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> w3.org/1999/xhtml"><head><title> 无标题页标题>
    • 我只需要这个文本中的“dd”
    • 您仍在返回完整的 HTML 页面响应。您可以尝试在您的Page_Load 中使用Response.WriteResponse.End 来覆盖.aspx 页面,但更常见的是,您可能有一个单独的URL,它只返回一个字符串。
    【解决方案2】:

    检查条件是否满足。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-02-02
      • 1970-01-01
      • 1970-01-01
      • 2010-10-06
      • 2015-04-19
      • 2013-10-03
      • 1970-01-01
      相关资源
      最近更新 更多