gpt4 book ai didi

javascript - AngularJS 通过文本设置选定选项

转载 作者:行者123 更新时间:2023-12-02 15:06:50 25 4
gpt4 key购买 nike

我正在使用 Angular 并尝试用我已经成功完成的对象数组填充 html 选择元素。我想做的下一件事是使用 $scope 变量设置所选内容,该变量表示选项文本(而不是值),以便它能够绑定(bind)。

var egApp = angular.module("egApp", []);
egApp.controller('ExampleCtrl', function($scope){
/*
$http.get('getLanguages.php')
.success(function(response){
$scope.Languages = response;
});
*/
$scope.Languages = [
{"id":"1", "name":"Java"},
{"id":"2", "name":"Python"},
{"id":"3", "name":"PHP"},
{"id":"4", "name":"SQL"}
];

/*
$http.get('getCode.php', {"params": {"CodeId": myCodeId}})
.success(function(response){
$scope.info = response;
});
*/
$scope.info = {
"id": "3",
"lang": "PHP",
"title": "hello world",
"content": "\<?php\n\techo \"hello world\";\n?\>"
};
});
     <div ng-app="egApp" ng-controller="ExampleCtrl">
<label>Id:</label><input type="text" ng-model="info.id" readonly/><br />
<label>Title:</label><input type="text" ng-model="info.title" /><br />
<label>Language:</label><select
ng-model="info.lang"
ng-options="L.name for L in Languages track by L.id"></select><br/>
<textarea>{{info.content}}</textarea>
</div>

这是我制作的 jsfiddle 的链接,以更好地说明我想做什么 https://jsfiddle.net/jpsh/ke2abu1t/

我想要的结果是“PHP”将成为所选文本,当所选项目发生更改时,会将 $scope.info.lang 设置为所选选项文本。

最佳答案

您需要将 ng-options 更改为如下所示:

ng-options="L.name as L.name for L in Languages"

“L.name as L.name”指定您想要显示名称并将名称​​绑定(bind)到 info.lang 属性。

关于javascript - AngularJS 通过文本设置选定选项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35070349/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com