私はオブジェクトがあります:model.data
このオブジェクトに質問の配列があり、その配列に複数の要素がある場合、どのようにボタンを無効にすることができますか?配列に要素がある場合、どのようにAngularJSのボタンを無効にすることができますか?
私がしようとしなかった:
data-ng-disabled="model.questions.length > 0"
しかし、これはまったく機能していないようです。
私はオブジェクトがあります:model.data
このオブジェクトに質問の配列があり、その配列に複数の要素がある場合、どのようにボタンを無効にすることができますか?配列に要素がある場合、どのようにAngularJSのボタンを無効にすることができますか?
私がしようとしなかった:
data-ng-disabled="model.questions.length > 0"
しかし、これはまったく機能していないようです。
EDIT:がポストに応じて答えを変更し、
何についてのコメント:
data-ng-disabled="checkQuestions()"
そして、あなたのコントローラ内:それは本当にダウンしています何
$scope.checkQuestions = function() {
if (model.questions.length > 1) { // your question said "more than one element"
return true;
}
else {
return false;
}
};
をこのタスクを達成するには複数の方法があるということです。式、関数、結合変数(ここでのさまざまな応答によって示されています)。いずれも作業していない場合は、代わりにモデルに問題がある可能性があります。いくつかの不一致を解消できる場合(モデルの構造を尋ねる私のコメントを参照してください...配列に何かがある場合、または配列に複数のものがある場合のみ、それを無効にすることに興味がありますか? )、これを理解するのに役立ちます。
ここには3つのアプローチがすべて示されています。彼らはすべて働いていることがわかります。あなたのコントローラーをフィドルと比較し、それが一緒に来るかどうか確認してください。
さて、私は今チェックしているので、チェックをする関数が必要です。 – Melina
また、 "質問の配列を持っています" :-)私はこれをパラメータ付きの関数として作る方が良いかどうか疑問に思っています。 AngularJSがなぜ関数を呼び出す必要はなく、カウントを行う機能を含んでいないのですか? – Melina
関数を呼び出す必要はなく、式は許されています。これは、同じことを達成する別の方法として、あなたの成功として報告するものを見ることです。表現や機能のどちらも機能しない場合、問題はあなたのモデルにある可能性があります。あなたのモデルがどのように見えるか)。 – jlmcdonald
falseにデフォルト値を設定し、モデルを作成します。配列の長さが空でない場合は、その値をtrueに変更します。モデルをボタンのng-disabled属性にバインドします。
あなたは間違いなく関数の代わりに式を使用できます。しかし、配列がundefined
かどうかを確認することができます。
<button ng-disabled="model.questions != undefined && model.questions.length > 0"></button>
私は仕事への答えを@zsongすることができませんでしたし、私は配列の長さを返すように関数を作成したくなかったので、私はそれがArray.lengthとを返された別のスコープの変数を作成することにより、作業ました。私は、何ができる
$scope.modelQuestionsLength = $scope.model.questions.length;
誰にも問題を抱えている場合ので、これは私のために働いていた私は、仕事に未定義の方法を得ることができませんでし
<button ng-disabled="modelQuestionsLength > 0"></button>
:
<input ng-disabled="fieldsPermittedForEdit.indexOf('postDate') < 0">
をでこの例ではpostDate
がfieldsPermittedForEdit
配列に存在しない限り、フィールドを無効にしています。
あなたは 'ng-app'を忘れましたか? –
私はng-appを持っています。回答した以外のポスターは、私が関数を作成する必要があることを示唆しています。 – Melina
あなたのコードは良く見えます。あなたはフィドルを作ることができますか?あなたは間違いなくそのための関数は必要ありません。 – zsong