如何使用angularjs控制器变量设置表单的操作?

时间:2015-09-24 04:58:38

标签: angularjs

我有一个这样的表格:

<form action="http://my-action-url">
...
</form>

如何使用变量来设置&#34;动作&#34; url相当于在我的控制器中说一个变量:

$scope.actionURL = "http://my-action-url";

我目前正在做:

<form action="{{actionURL}}">
...
</form>

但是,当我检查元素时,我看到action标记为空。

4 个答案:

答案 0 :(得分:1)

这里是可用于使用angularJs范围变量在表单中设置操作的代码。我已成功运行此代码。请检查一下。

此处提交无效,因为stackoverflow不允许提交。有关详细信息,您可以在控制台中看到此错误

 angular.module("test",[]).controller("testAction",testAction);
    function testAction($scope) {
    $scope.actionURL = "http://www.google.com";
    $scope.testD =  function() {
    	location.href = $scope.actionURL;
    };
}
 

<!DOCTYPE html>
<html>
<head>
 <script   src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js">
 </script>
</head>
<body ng-app="test">
 <div ng-controller="testAction">
   <form ng-submit="testD();">
     <input type="submit" >
     <div>{{actionURL}}</div>
   </form>
 </div>
</body>
</html>

答案 1 :(得分:1)

您可以使用

撰写表格
$sce.trustAsHtml(html);

自己

编辑:更好用

<form action="{{trustAction(your post url)}}">

并在您的范围内写

$scope.trustAction = function (actionURL) {
    return $sce.trustAsResourceUrl(actionURL);
};

答案 2 :(得分:0)

你可以在这里看到https://docs.angularjs.org/api/ng/directive/form 角度防止动作,由于你必须使用 ng-submit或ng-click 作为http://dojo.telerik.com/EmEki

答案 3 :(得分:0)

我使用了jQuery选择器来设置表单操作。

<form method="post" name="deleteForm" action="#">
    <input type="hidden" name="_method" value="DELETE">
    <input type="hidden" name="_token" value="{{ csrf_token('delete') }}">
    <md-button ng-click="closeDialog()" class="md-raised md-primary md-button md-ink-ripple">
        Cancel
    </md-button>
    <md-button type="submit" class="md-raised md-warn md-button md-ink-ripple">
        Delete
    </md-button>
</form>

在我的控制器中:

$('form[name="deleteForm"]').attr('action', '/manager/card-design/' + cardDesign.id);