从下拉列表中获取代码

时间:2015-03-10 09:18:34

标签: javascript angularjs http-post

我的webapp中有一个下拉列表,其中有两个值;代码和描述。在输入字段中,我可以过滤它们。当我点击我想要的项目时,我发送了一个http POST请求(在angularjs中)。此请求以json格式发送所有值。所以我发送POST,代码和描述。提交后,我有服务器响应只返回代码。这是正确的,我需要保持这种结构。我要做的是在提交后在输入字段中显示与该代码“连接”的描述。在这里我创建了一个模拟(当然没有发送URL)。

http://jsfiddle.net/8y48q/26/

<div ng-app="myApp">
    <div ng-controller="MyCtrl">
        <form data-ng-submit="send()">
            <div class="uk-form-row uk-width-1-1" data-ng-repeat="items in inputList.getinputList">
                <input ng-model='item.value' type="text" placeholder="Choose"/>
                <!-- WORKS OK -->
                <div class="uk-parent" data-uk-dropdown="{mode:'click'}">
                    <a href="">Nav item - Works OK</a>
                    <div class="uk-dropdown uk-dropdown-navbar" style="top:50px">
                        <table>
                            <thead>
                            <tr>
                                <th>Code</th>
                                <th>Description</th>
                            </tr>
                            </thead>
                            <tbody>
                            <tr data-ng-repeat="item in numberList.getList | filter:item.value" ng-click="setSelected(item)">
                                <td>{{item.first}}</td>
                                <td>{{item.last}}</td>
                            </tr>
                            </tbody>
                        </table>
                    </div>
                </div>
            </div>
            <button>Send</button>
        </form>
    </div>
</div>

角度部分:

var myApp = angular.module('myApp',[]);


function MyCtrl($scope, $http) {
    var url = "http://....";

    $scope.item={}
    $scope.numberList={}
    $scope.numberList.getList=[{'first':'1','last':'skeet'},{'first':'2','last':'shaikh'},{'first':'3','last':'game'}]

    $scope.inputList={}
    $scope.inputList.getinputList=[{'firstA':'AAA','lastB':'BBBB'}]

    $scope.idSelectedVote = null;
    $scope.setSelected = function (idSelectedVote) {

        $scope.idSelectedVote = idSelectedVote;
        $scope.item.value=idSelectedVote.last;
        //alert(idSelectedVote);
    };

    $scope.send = function() {
        $http({
            method: 'POST',
            url: url,
            data: {
                datas: $scope.numberList.getList
            }

        }).success(function(data) {
            $scope.result = data;

        }).error(function(data, status) {
            console.log(status);
            console.log(data);
        });

    };
}

正如我写的那样,当我点击“发送”按钮时,我会注入一个http POST请求,该请求将输入文本中的数据作为json发送到URL。服务器向我发送没有描述但只有代码的响应。我需要从该代码返回正确的描述

0 个答案:

没有答案