مثال: لدي 3 حقول إدخال. يتم حساب القيم من حقلي الإدخال الأول والثاني وتظهر النتيجة في مربع الإدخال الثالث.
var1 = parseFloat($("#input1").val();
var2 = parseFloat($("#input2").val();
result = var1 + var2;
$("#input3").val(result);
<input type="number" id="input3" name="input3" ng-model="editForm.input3" ng-currency class="form-control input-sm" placeholder="input3">
يمكنني رؤية النتيجة في النموذج في input3 ، ولكن كيف يمكنني تحديث النموذج؟
جرب هذا-
$("#input3")
.val(result)
.trigger('change')
بشكل عام ، تريد تحديث النموذج المرتبط بإدخالك (والسماح للزاوية بنشره في العرض) بدلاً من تحديث العرض الخاص بك مباشرةً. عادةً ما يتم استخدام الأخير فقط في اختبارات الوحدة.
في الواقع ، هذا لا يشبه الرمز الزاوي. في Angular ، العكس هو الصحيح: تقوم بتحديث النموذج وينعكس التغيير في العرض. (النموذج هو المصدر الوحيد للحقيقة).
لذلك ، بدلاً من محاولة تعيين القيمة وتوقع تحديث النموذج ، يجب عليك تحديث النموذج ( editForm.input3
) وسيتم تحديث قيمة العنصر كنتيجة.
ومع ذلك ، هذا سؤال دعم عام ويجب توجيهه إلى القنوات المناسبة .
يتم حجز مشكلات GitHub لتقارير الأخطاء وطلبات الميزات.
جاء هذا في متناول يدي من أجل تكامل typeahead + bloodhound مع angularJS
التعليق الأكثر فائدة
جرب هذا-
بشكل عام ، تريد تحديث النموذج المرتبط بإدخالك (والسماح للزاوية بنشره في العرض) بدلاً من تحديث العرض الخاص بك مباشرةً. عادةً ما يتم استخدام الأخير فقط في اختبارات الوحدة.