#javascript #angularjs
#javascript #angularjs
Вопрос:
Как я могу получить значение на основе имени? ng-модель та же, но имя уникально.
<input type="text" name="name1" ng-model="field.value">
<input type="text" name="name2" ng-model="field.value">
Я пытался со следующим кодом, но безуспешно! Я хочу показывать 'some value'
только в имени, содержащем name1.
if(document.getElementsByName('name1')){
$scope.field.value = 'some value';
}
Комментарии:
1. я не могу понять, что вы хотите сделать, не могли бы вы подробнее объяснить свою проблему?
2. Что означает «показывать значение показа» ? Не совсем понятно, чего вы пытаетесь достичь. Подход определенно неправильный, вы не должны запрашивать dom и должны сохранять состояние в модели контроллера
3.
ng-model
Директива создает двустороннюю привязку между входными данными и переменной области видимости. Если переменная области видимости одинакова, любые изменения в переменной области видимости обновят оба входных параметра. Любые изменения в любом из входных данных обновят модель и автоматически обновят другие входные данные. Чего вы пытаетесь здесь достичь?
Ответ №1:
Привет, просто предложение, пожалуйста, будьте более наглядны при задании вопроса. Это может помочь другим понять вопрос.
Проблема: Насколько я знаю, вы хотите отобразить измененное значение в текстовом поле ввода с именем «name1». Но в вашем случае общая переменная (field.value) связана с обоими текстовыми полями ввода, поэтому любое изменение в field.value повлияет на оба.
Решение:
Есть два случая:
1. Вы даже не хотите показывать текстовое поле ввода.
2. Вы не хотите изменять значение текстового поля ввода.
Решение для случая-1 Вы можете взять одну логическую переменную и использовать с ней директиву ng-if или ng-show.
<input type="text" name="name1" ng-model="field.value">
<input type="text" ng-if="showfFlag" name="name1" ng-model="field.value">
Решение для случая 2
Вы можете взять одну логическую переменную и использовать ее для изменения модального значения для вашего входного текста.
<input type="text" name="name1" ng-model="field.value">
<!-- showFlag === true? field.value: " ""
If flag is true then show value else return
old value of empty string depends on you requirement.
You can change that function in your controller.
-->
<input type="text" name="name2" ng-model="showFlag === true? field.value: " "">