【问题标题】:Concat angular var in js functionjs函数中的Concat angular var
【发布时间】:2018-02-08 18:25:27
【问题描述】:

我需要在函数 window.open 的第一个参数中连接“proposal.id”。我的代码如下所示:

<button ion-button color="light" onclick="window.open('https://mywebsite.com/offer?id={{ proposal.id }}', '_self')">Offert</button>

有什么想法吗? 谢谢!

【问题讨论】:

    标签: javascript html angularjs ionic-framework


    【解决方案1】:

    好的,这就是您应该尝试的方法。我们需要将其分解为标记和控制器逻辑:

    标记:

    <button ion-button color="light" ng-click="openMyWindow()">Ofertar</button>
    

    控制器:

    您将向控制器注入“窗口”(如果您还没有)

    .controller('MyController', function($scope, $window) {
    
        $scope.openMyWindow= function() {
            $window.open('https://mywebsite.com/offer?id=' + proposal.id, '_self');
        };
    });
    

    希望这会有所帮助!

    【讨论】:

    • 不,这会返回错误:出于安全原因,不允许绑定到事件属性 'onclick',请使用 (click)=... 如果 'onclick' 是指令输入,请确保该指令由当前模块导入。 .... blablabla
    • 如果您使用的是Angular,那么window 必须是undefined 选中此stackoverflow.com/questions/40760099/…
    • 在 Angular 上有一个类似的功能来重定向外部 url,可以放在 html 标签上吗?
    • 检查编辑的答案。它可以在我的测试代码中正常工作。
    【解决方案2】:

    试试这个:

    <button ion-button color="light" onclick="window.open('https://mywebsite.com/offer?id=' + {{ proposal.id }}, '_self')">Offert</button>
    

    【讨论】:

      【解决方案3】:

      最后我试试这个:

      我在“mypage.ts”中创建了一个名为“openlink()”的新函数

      “mypage.html”看起来像这样:

      <button ion-button color="light" (click)="openLink(proposal.id)">Offer</button>
      

      还有文件“mypage.ts”

      openLink(proposal){
          window.open("https://mywebsite/offer?id=" + proposal, "_self");
      }
      

      谢谢大家,你们的回复让我大开眼界了嘿嘿!

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2015-12-29
        • 1970-01-01
        • 2023-04-01
        • 1970-01-01
        • 2022-01-26
        • 2016-10-02
        • 1970-01-01
        • 2018-10-03
        相关资源
        最近更新 更多