Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/441.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 将角度范围传递给jquery_Javascript_Php_Jquery_Angularjs - Fatal编程技术网

Javascript 将角度范围传递给jquery

Javascript 将角度范围传递给jquery,javascript,php,jquery,angularjs,Javascript,Php,Jquery,Angularjs,有人有像我这样的案子吗?我必须将另一个服务连接到我的系统。问题是JS前端不支持服务(im使用angularJS)。要显示服务的表单,我需要像这样填写jQuery表单: <script type="text/javascript"> $(function() { var data = new Object(); data.req_merchant_code = '1'; data.req_chain_merchant = 'NA'; data.req_payment_channel =

有人有像我这样的案子吗?我必须将另一个服务连接到我的系统。问题是JS前端不支持服务(im使用angularJS)。要显示服务的表单,我需要像这样填写jQuery表单:

<script type="text/javascript">
$(function() {
var data = new Object();
data.req_merchant_code = '1';
data.req_chain_merchant = 'NA';
data.req_payment_channel = '15'; // ‘15’ = credit card
data.req_transaction_id = '<?php echo $invoice ?>';
data.req_currency = '<?php echo $currency ?>';
data.req_amount = '<?php echo $amount ?>';
data.req_words = '<?php echo $words ?>';
data.req_form_type = 'full';
getForm(data);
});
</script>
我试着把这个范围放在像这样的参数上

$scope.dokuPayment = function(){
            topUpFactory.createwordsDoku().then(function(data){
            console.log(data.data);
            var req = data.data;
            $scope.invoice = req.invoice;
            $scope.words = req.words;
            $scope.currency = req.currency;
            $scope.amount = req.amount;
            console.log(invoice);
            $("#doku-modal").modal('show');
            });
        }
<script type="text/javascript">
      console.log("form doku");

      $(function() {
      var data = new Object();
      data.req_merchant_code = '3279';
      data.req_chain_merchant = 'NA';
      data.req_payment_channel = '15'; // ‘15’ = credit card
      data.req_transaction_id = {{invoice}};
      data.req_currency = {{currency}};
      data.req_amount = {{amount}};
      data.req_words = {{words}};
      data.req_form_type = 'full';
      getForm(data);
      });

      </script>

console.log(“formdoku”);
$(函数(){
var data=新对象();
data.req_商户代码='3279';
data.req_chain_merchant='NA';
data.req_payment_channel='15';/'15'=信用卡
data.req_事务_id={{invoice};
data.req_currency={{currency};
data.req_amount={{amount};
data.req_words={{words};
data.req_form_type='full';
getForm(数据);
});

但是不起作用。。我试图设置UpperStroop(“”)仍然不起作用。任何人都可以帮忙。感谢使用AngularJS时,尽量避免以那种方式使用jQuery

$(“#doku模式”).model('show');-在这个框架中这样做不是一个好主意

本文可以提供一些指导:

在$scope.dokuPayment中,只要getForm(数据)不直接操作DOM,您就可以做与getForm(数据)相同的事情


因此,您不必向视图传递任何数据,因为整个JS逻辑应该在AngularJS服务或控制器中。

使用AngularJS时,请尽量避免以这种方式使用jQuery

$(“#doku模式”).model('show');-在这个框架中这样做不是一个好主意

本文可以提供一些指导:

在$scope.dokuPayment中,只要getForm(数据)不直接操作DOM,您就可以做与getForm(数据)相同的事情


因此,您不必向视图传递任何数据,因为整个JS逻辑应该在您的Angular服务或控制器中。

有一个简单的hack,不确定它是否是良好的实践!您可以使用$window范围。 您只需使用$window.{variable name}将角度变量转换为全局变量,然后使用window.{variable name}从外部访问它们

请看这里:

$scope.dokuPayment = function(){
            topUpFactory.createwordsDoku().then(function(data){
            console.log(data.data);
            var req = data.data;
            $window.invoice = req.invoice;
            $window.words = req.words;
            $window.currency = req.currency;
            $window.amount = req.amount;
            console.log(invoice);
            $("#doku-modal").modal('show');
            });
        }
在AngularJS之外:

console.log("form doku");
  $(function() {
  var data = new Object();
  data.req_merchant_code = '3279';
  data.req_chain_merchant = 'NA';
  data.req_payment_channel = '15'; // ‘15’ = credit card
  data.req_transaction_id = window.invoice;
  data.req_currency = window.currency;
  data.req_amount = window.amount;
  data.req_words = window.words;
  data.req_form_type = 'full';
  getForm(data);
  });

这对我有用。希望这有帮助:)

这里有一个简单的hack,不确定它是否是好的实践!您可以使用$window范围。 您只需使用$window.{variable name}将角度变量转换为全局变量,然后使用window.{variable name}从外部访问它们

请看这里:

$scope.dokuPayment = function(){
            topUpFactory.createwordsDoku().then(function(data){
            console.log(data.data);
            var req = data.data;
            $window.invoice = req.invoice;
            $window.words = req.words;
            $window.currency = req.currency;
            $window.amount = req.amount;
            console.log(invoice);
            $("#doku-modal").modal('show');
            });
        }
在AngularJS之外:

console.log("form doku");
  $(function() {
  var data = new Object();
  data.req_merchant_code = '3279';
  data.req_chain_merchant = 'NA';
  data.req_payment_channel = '15'; // ‘15’ = credit card
  data.req_transaction_id = window.invoice;
  data.req_currency = window.currency;
  data.req_amount = window.amount;
  data.req_words = window.words;
  data.req_form_type = 'full';
  getForm(data);
  });
这对我有用。希望这有帮助:)