使用AngularJS将值推送到webform输入文本框

时间:2017-03-04 07:24:05

标签: angularjs

我使用Angular JS创建了一个搜索,我从一个JSON文件中提取数据并将其显示在一个工作正常的页面上的表中。表行和表列由Angular ng-repeat创建。

并且在表格下方添加了一个webform,其中包含很少的字段(这是简单的html / css / js webform)。我想要一旦单击表格行,表格列中的数据并将其推送到webform输入文本框中。我试过的是ng-click =“callfunction(传递值),在callfunction中我可以显示在Web浏览器的控制台中传递的所有值,但是我无法找到如何在webform的文本框中推送值,有人可以帮忙。可以在here

找到运行样本

2 个答案:

答案 0 :(得分:0)

刚检查并发现我正在定位的ID。愚蠢的我,webform文本框的ID是骆驼套装,我的目标是所有小写。无论如何,谢谢你们在那里。

答案 1 :(得分:0)

您必须在控制器中声明要与视图绑定的模型:

$scope.firstname = '';
$scope.lastname='';
$scope.email = '';

现在,您应该将模型绑定到您的视图:

 <tr>
                    <td>
                        <label for="FirstName">First Name <span class="req">*</span>
                        </label>
                        <br />
                        <input type="text" name="FirstName" ng-model="firstname" id="FirstName" class="cat_textbox" maxlength="255" /> </td>
                </tr>
                <tr>
                    <td>
                        <label for="LastName">Last Name <span class="req">*</span>
                        </label>
                        <br />
                        <input type="text" name="LastName" ng-model="lastname" id="LastName" class="cat_textbox" maxlength="255" /> </td>
                </tr>
                <tr>
                    <td>
                        <label for="EmailAddress">Email Address <span class="req">*</span>
                        </label>
                        <br />
                        <input type="text" name="EmailAddress" ng-model="email" id="EmailAddress" class="cat_textbox" maxlength="255" /> </td>

最后,您应该使用每行中的click方法更新模型:

 $scope.pushval = function (first,last,email)
        {
             $scope.firstname = first;
             $scope.lastname = last
             $scope.email = email;

        }

我想建议你一个ng-click方法: 你的ng-click应该是:

pushval(i) //it's good to pass object and get property value from object in controller

您的pushval方法就像:

$scope.pushval = function (myRow)
        {
             $scope.firstname = myRow.firstName;
             $scope.lastname = myRow.lastName;
             $scope.email = myRow.email1.value;

        }