问题标签 [angular-ngmodel]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
62 浏览

angularjs - 没有重复的单选按钮上的 ng-model

Angular 文档对单选按钮上的 ng-model推荐的方法是在每个输入元素上重复 ng-model。

我希望它更干燥,以避免错误。

[UPD] 我还希望在 html 中明确声明每个输入元素(即输入元素在 html 中重复,但 ng-model 不是)。所以我不希望使用在指令中生成输入元素的解决方案,但是修改现有输入元素的指令就可以了。

有没有办法为一组单选按钮输入指定一次 ng-model ?

FWIW,我尝试创建一个指令(在包含输入的 div 上),它为每个输入元素添加了一个 ng-model 属性,虽然它产生了正确的 DOM,但输入并未绑定到范围。该指令的优先级 >0(ng-model 的优先级为 0)。

0 投票
13 回答
148336 浏览

angularjs - Angular bootstrap datepicker 日期格式不格式化 ng-model 值

我在我的角度应用程序中使用引导日期选择器。但是,当我从我绑定的基础 ng-model 的日期选择器中选择一个日期时,我希望该 ng-model 采用一种日期格式“MM/dd/yyyy”。但它每次都像这样约会

代替

我为同一个plunkr 链接创建了一个 plunkr

我的 Html 和控制器代码如下

角度控制器

提前感谢您查看我的问题。

更新

我正在调用以下方法来发布我的数据,VAR 是大小为 900 的数组,其中包含日期选择器变量。

0 投票
1 回答
754 浏览

parsing - 从 datePicker 和 $parser 函数的 ngModelController 中选择日期后更改事件不起作用

在我的自定义指令中,我通过从模型中获取公历日期并将其转换为波斯日期然后将其显示给用户来进行日期转换。
通过使用 persianDatePicker 转换为波斯日期,然后转换为公历日期更新模型。我的问题是,通过从 DatePicker 中选择日期,NgModelController 的解析器功能不起作用并且不会对日期更改做出反应。我在相关 JS 文件中 DatePicker 的 OnSelect 事件中使用了以下指令

$("#" + inputId).change();

并确实在 Link 函数中放置了一个函数,并通过名称onSelectedJalaliDate调用它

在相关的 JS 文件中。

为解析器声明的函数被调用,但模型没有更新。请任何知道的人告诉我如何调用该函数然后更新模型。我使用的是 firfox 版本 29.0.1。

指示:

0 投票
3 回答
7833 浏览

javascript - 选择返回未定义的AngularJS模型

我正在尝试检索 a 的当前选项的值select,但它返回我未定义(我希望它返回我一个对象)。

标记:

控制器:

奇怪的部分是我创建了这个 jsfiddle来重现这个问题,使用完全相同的代码,它可以工作。

更新:

我在这里创建了一个 plunkr ,我复制了这个问题。

第一个选择包含在一个带有自己的控制器“MyCtrl”的 div 上,它按预期工作,因为我能够从 ng-change 事件处理函数中检索模型。

第二个选择“属于” DashCtrl,整个 Dash 选项卡视图控制器。当我尝试从 ng-change 事件处理函数中检索模型时,它返回我未定义。这是为什么?

0 投票
1 回答
2543 浏览

angularjs - AngularJS - 将输入绑定到多个模型元素

首先让我说,我知道我所要求的不是想要的模式,它只是我需要的东西作为临时补丁。

我希望能够将单个输入元素绑定到模型中的两个“位置”。例如

假设我有一个用于输入用户名的输入,并且我希望它填充模型中的 3 个字段 userusernameuser_name

我不关心在发生碰撞时会发生什么......即在分配model.user='aaa'; andmodel.username='bbb'` 之后,任何一致的行为对我来说都可以。

我能想到的最简单的事情是绑定user然后观察用户并更新用户名和用户名。

也许我可以创建一个指令,从 ng-model 复制到它自己的目标......

是否有任何智能简单的快速方法可以为此使用 ng-model 或我可以/应该使用的任何其他技巧?

更新- 尝试满足好奇。

对于以下情况,我需要它:

注意:它不是为 Angular 设计的,我想转向 Angular 但不能一次转换整个东西。

考虑一个表单,它对一个动作有一个选择,然后为不同动作的不同参数输入几个输入,一些字段对多个单个动作是通用的。字段用表示它们所属动作的类进行标记,JQuery 用于根据所选动作隐藏和显示它们,并从属于当前动作的所有字段中收集值,以便在动作需要时使用它们要执行。

现在我想开始将动作分离为不同的独立形式和不同的模型,在我看来,最简单的事情是如果在过渡阶段我能够设置一个输入来更新多个模型。

0 投票
3 回答
2797 浏览

angularjs - 通过其 angularjs 模型查找字段

我能以某种方式找到与给定 angularjs 模型对应的字段吗?我知道,可能有多个字段与单个变量对应,或者没有,但这不是问题。

例如,有一个input ng-model=users[2].name,我想要一个获取字符串"users[2].name"并返回 DOM 元素的方法。

我不需要很快,因为我希望它用于一种用户输入的演示,例如,如果用户应该填写名称字段,我将一个(模拟鼠标)覆盖移动到它并以编程方式填充它。硅

我可以通过 jquery 来完成,但这相当麻烦,因为它几乎不像 selector 那样简单input[ng-model="user[0].name"]。它通常被埋在ng-repeat="user in users"几层深的地方。或者更糟糕的是,在ng-repeat-startng-repeat-end

改变解决方案users[2].name然后找到更改的 DOM 元素也可能没问题。

我创建了一个plunk希望展示我想要的东西。

0 投票
1 回答
8483 浏览

javascript - Angular.js - ng-model 在文本输入上覆盖我的 ng-value

我将首先提到我对 Angular 很陌生,所以我可能没有以正确的“Angular 方式”做事。

我有以下 ng-repeat 循环遍历一些数据 - 正在返回正确的数据。

由于某种原因, input="text" 字段上的 ng-value 没有显示。我需要将字段中的数据传递给 updateAttribute() 函数,这就是我将模型绑定到我正在传递的 attr 变量的原因。该变量随后被用于 API 调用。

如果我将模型从文本字段中取出,我将获得正确的值,但我需要有人获取该值并将其传递给函数。

如果有另一种方法我应该这样做,请告诉我:)

0 投票
0 回答
850 浏览

angularjs - 如果 ng-model 无效,访问 HTML 表单输入值

假设我有一个输入和验证规则(如最小长度、最大长度等)的表单。我想向用户显示他应该在当前输入值上附加(或删除)多少符号以通过验证规则。但是这个输入对应的 ng-model 是空的,因为输入是无效的。如何访问当前输入值?

0 投票
2 回答
120 浏览

angularjs - 带有 ngModelController 格式化程序的 Angular 指令

我正在尝试实现一个向<input type="date">字段添加格式化程序的简单指令。该指令如下所示:

在我将其名称更改为mb-date-format. 我创建了一个 JS 小提琴:http: //jsfiddle.net/HB7LU/4458/。它似乎可以与 , 等名称一起正常工作aaabbb但是当您将名称更改为, , ...ccc时它会停止工作。jjjzzz

0 投票
2 回答
726 浏览

angularjs - AngularJS - 默认下拉选择选项

这个问题困扰着我,因为它看起来很容易解决。

我使用的是纯 HTML,但数据正在通过 angular 传递到下一个视图。

代码片段如下所示:

我要实现的目标:在<option value="25">25-30</option>角度加载时将其作为默认选择的选项

我试过的:

  1. 拥有<option value="25">25-30</option>一个ng-selected="age"属性

    <span data-ng-show="isCountry()"> <select class="selectpicker" data-ng-model="age"> <option value="21">21-24</option> <option ng-selected="age" value="25">25-30</option> <option value="31">31 and up</option> </select> </span>

  2. 拥有<option value="25">25-30</option>一个selected="selected"属性

    <span data-ng-show="isCountry()"> <select class="selectpicker" data-ng-model="age"> <option value="21">21-24</option> <option selected value="25">25-30</option> <option value="31">31 and up</option> </select> </span>

  3. 甚至尝试<option value="25">25-30</option>先显示

    <span data-ng-show="isCountry()"> <select class="selectpicker" data-ng-model="age"> <option value="25">25-30</option> <option value="21">21-24</option> <option value="31">31 and up</option> </select> </span>

选项 2 和 3 确实value首先显示我想要的,但它没有传递到下一个view

如果可能的话,我不想接触太多 Angular 代码,因为主要开发人员是临时的......

任何帮助,将不胜感激。

谢谢!