gpt4 book ai didi

angularjs - 如何在 angularjs 中加载时填充文本字段

转载 作者:太空宇宙 更新时间:2023-11-03 23:30:04 24 4
gpt4 key购买 nike

我正在开发一个应用程序,我想在表单中加载一个文本字段,并禁用它进行编辑。我想回答两件事。实际上我的想法是从 url 中获取一个 mongodb_id 并将其传递给我的 Controller ,并从数据库中获取相应的电子邮件 ID 并将其填充到加载表单中,以便用户无法在字段中编辑它.

问题 1:我已经编写了使用 ID 获取电子邮件 ID 的 api,但我不确定如何从我的网址获取 _id

www.xyzabc.com/register.html?id:57c5dda12e63d15d2e4dea2cwww.xyzabc.com/register.html?57c5dda12e63d15d2e4dea2c

任何格式的网址。

我的 API 是这样的:

$scope.fetchEmail = function (id) {

$scope.id = "57c5dda12e63d15d2e4dea2c";
console.log("logging routeparam");
console.log($scope.id);
UserServices.fetchEmail($scope.id, function (email) {

console.log("insied fetch fn");
console.log(email);
$scope.user.email = email;

});
}

如果 id 是硬编码的,上面的代码就可以完美完成一切。我不知道如何从url中获取url参数作为id。

问题 2:一旦我在 $scope.user.email = email; 中获取我的 ID,它应该会填充到禁止用户编辑的字段中。

我尝试了下面的代码,但它对我不起作用。

<input name="email" id="email" class="form-control" placeholder="Email" ng-model={{"user.email"}} disabled="disabled" required>

任何人都可以帮我解决这个问题吗?提前致谢。

最佳答案

您应该使用 URL 路由来传递 Angular URL 中的变量。我相信你想要每个 id 都有一个唯一的 url,对吗?

$stateProvider
.state('contacts.detail', {
url: "/contacts/:contactId",
templateUrl: 'contacts.detail.html',
controller: function ($stateParams) {
// If we got here from a url of /contacts/42
expect($stateParams).toBe({contactId: "42"});
}
})

来源:https://github.com/angular-ui/ui-router/wiki/url-routing#url-parameters

HTML 的简单格式如下。

<input name="email" id="email" class="form-control" placeholder="Email" ng-model="user.email" ng-disabled="true" required>

关于angularjs - 如何在 angularjs 中加载时填充文本字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39274445/

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