【问题标题】:How to refresh particular div in the html如何刷新html中的特定div
【发布时间】:2023-04-07 12:54:01
【问题描述】:

在视图中反映值时遇到问题,我不想加载完整的页面,因为加载页面的成本很高,

我有两个控制器(controller1 和 controller2),一个服务(service1)和两个视图(modalwindow.html 和 product.html)。

场景是: 1.用户在product.html(包含多个手风琴)上,用户明确关闭所有手风琴。

2.用户点击打开模态窗口的图标,因为它打开了模态窗口,它不会改变地址栏上的URL。

3.模态窗口(Modalwindow.html)有show product的链接,因为产品页面是浏览器的活动页面(show product是用户明确关闭的手风琴)。

  1. 点击链接后,product.html 上应打开相应的手风琴

我通过服务(service.js)在模态窗口控制器(controller2.js)和产品页面(controller1.js)之间进行通信,我正在调用controller2

如何在不加载完整页面的情况下解决此问题

【问题讨论】:

  • 你能创建一个小提琴来重现你的问题吗?它可能有助于理解和解决您的问题。
  • 嗨 Sniels,尝试用手风琴创建类似的程序jsfiddle.net/8MVLJ/1461
  • 模态似乎对我不起作用。
  • Sniels,我已经更新了代码并在代码表单中解释了场景。 jsfiddle.net/8MVLJ/1486

标签: html angularjs


【解决方案1】:

假设选择产品时模态关闭,它可以return the value to the calling controller。然后它打开指定的手风琴。

【讨论】:

  • 布伦特,实际上我正在使用事件处理程序从 modalController 调用 productcontroller,因此它在控制器中完美地更新了值,但该值没有反映在视图上(product.html)
  • 模式创建一个新的$scope。您可能需要将模式中的值传递给控制器​​。
【解决方案2】:

我在你的小提琴中摆弄。您混合了两种在小提琴中显示类别的方式:一个手风琴值和两个布尔值(categoryAccordion、productAccordion)。我开始使用一种方式,它似乎可以与 eventCallback 一起使用。此外,您在 eventCallback 中错误地检查了您的“参数”。您将它作为数组传回,所以首先从数组中取出值。 此外,您在 eventCallback 中错误地检查了您的“参数”。`

if (args[0] == 'Product') {
  $scope.productAccordion = true;
  $scope.categoryAccordion = false;
} else {
  $scope.productAccordion = false;
  $scope.categoryAccordion = true;
}

fiddle


如果它不能在你的真实代码中工作,它可能与以下SO question有关。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-06-08
    • 1970-01-01
    • 2015-10-21
    • 2017-05-15
    • 2014-07-30
    • 2013-12-03
    相关资源
    最近更新 更多