【问题标题】:After partial postback of Update-panel, everything outside the update-panel disappears更新面板部分回发后,更新面板外的所有内容都消失了
【发布时间】:2018-03-29 22:29:44
【问题描述】:

问题描述:

我在更新面板中有一个AJAX 文件上传器控件。 文件上传成功后,我需要向用户显示一个引导弹出窗口。

案例 1:当我添加更新面板属性“updateMode='conditional'”时,文件上传成功后弹出窗口按预期工作。但是保留在更新面板之外的控件在部分回发后不会得到渲染。 我正在使用以下代码库从后面的代码中触发 JavaScript 代码:

ScriptManager.RegisterStartupScript(this, this.GetType(), "AddStudent",
    "addStudent('1','xyz','10000');",true);

案例 2:但是当我删除“updateMode='conditional'”属性时,更新面板外的控件在部分回发后不会消失,但弹出窗口根本不起作用即脚本没有在 DOM 中注册。

请帮忙。

【问题讨论】:

  • 这个问题看起来很像你的另一个问题。
  • 根本没有。之前我无法从代码隐藏中触发 JavaScript 方法。现在,我可以,但更新面板之外的控件在部分回发后消失了。问题可能与 AJAX 上传器有关。当我从更新面板中删除 AJAX 上传程序时,它工作正常。希望您了解其中的区别。提前致谢!
  • 是的,文件上传控件在更新面板中工作。
  • @VDWWD:请仔细阅读我发布的答案。希望现在您会明白该问题没有重复,并且也会从该问题中删除“重复标签”和“-1”点。恕我直言,我在此发表我的疑问,寻求知识分子的帮助。我总是确保我不应该把垃圾放在这里。谢谢大家!

标签: javascript asp.net popup updatepanel scriptmanager


【解决方案1】:

在挖掘每一行代码之后,我终于找到了错误背后的原因。

放置在更新面板中的“div”标签未按预期关闭。 这是错误和解决方案:

错误标签:

<div class="vertical-bar"/>

解决方案:

<div class="vertical-bar"></div>

由于上面的 DIV 没有正确关闭,DOM 给人的印象是 div 下面的所有元素都在 div 内部,因此所有控件都在更新面板中呈现。

因此,在部分回发的过程中,其他控件正在消失。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-03-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多