我正在尝试对形式上的onBlur事件执行一些计算,之后想要隐藏并显示下一个单选按钮字段。
当我调试一切看起来不错但在UI上我无法看到正确的行为。
首先是文本输入,第二个字段是radio,我也想动态设置标签。
我错过了什么吗?设置它的任何其他方式?
fields [
{
"type": "moneyInput",
"key": "amtRcv",
"id" : "amtRcv",
"templateOptions": {
required: true,
label:"",
onBlur: function calcAmount($viewValue, $modelValue, scope) {
var recvAmt = $viewValue;
if(recvAmt)
{
var missingAmount = service.amnt - recvAmt;
//here trying to set the hide and label for radio field. It is getting set but not working as expected
fields[1].hideExpression = "false";
fields[1].templateOptions.label = 'So, is $' + missingAmount + ' is missing? ';
} else {
fiedls[1].hideExpression = "true";
}
}
}
},
{
"type": "radioInput",
"key": "amnt",
"id" : "amnt",
"wrapper" : "requiredField",
"templateOptions": {
required: true,
label:"",
"options": [
{
"name": "Yes",
"value": true
},
{
"name": "No",
"value": false
}
]
}
}
]
答案 0 :(得分:0)
最简单的方法是简单地设置一个模型标志,然后检查下一组单选按钮的hideExpression。
例如,在onBlur函数中,您可以执行以下操作:import numpy as np
from numba.pycc import CC
cc = CC('diffeq')
@cc.export('func', 'f8[:](f8[:], f8, f8[:])')
def func(y, t, params):
return np.array([y[1], -y[1]/params[0] + np.sin(y[0]) + params[1]*np.cos(params[2]*t)])
cc.compile()
然后在radioInput字段中,您将hideExpression设置为
$scope.model.hideRadioBtn = true;
然后,只要此值设置为true,它就会隐藏该字段。我发现这通常是最简单的方法来实现这一点,而不需要一堆额外的代码。我们在工作中使用它很多,并且一直运作良好。