Javascript 决定在运行时使字段只读的编辑组件
我喜欢在钛上用Javascript制作iOS应用程序。问题是,我的代码中当前有很多if-else条件,根据文档的状态,这些条件使得输入字段可编辑和不可编辑。我想摆脱这些重复的代码,因此我考虑将这些代码分离到另一个文件中,然后执行一个require。我在每个输入元素上分配一个自定义属性,然后将元素的Id、状态和是否应为只读的标志传递给组件。这是正确的做法吗? 示例:这在我的代码中经常发生:Javascript 决定在运行时使字段只读的编辑组件,javascript,if-statement,titanium,Javascript,If Statement,Titanium,我喜欢在钛上用Javascript制作iOS应用程序。问题是,我的代码中当前有很多if-else条件,根据文档的状态,这些条件使得输入字段可编辑和不可编辑。我想摆脱这些重复的代码,因此我考虑将这些代码分离到另一个文件中,然后执行一个require。我在每个输入元素上分配一个自定义属性,然后将元素的Id、状态和是否应为只读的标志传递给组件。这是正确的做法吗? 示例:这在我的代码中经常发生: function onGetItemsSuccess(result) if(result.status
function onGetItemsSuccess(result)
if(result.status == 2){
$("#inpPartnerName").attr('readonly',true);
}
if(result.status == 5){
$("#inpMfgNo").attr('readonly',false);
}
}
function onGetAccountDetailsSuccess(result){
if(result.status == 1){
$("#inpQuantity").attr('readonly',true);
}
}
您可以创建仅具有常规验证功能的文件(比如帮助器或实用程序文件)。 e、 g 这可能是一个解决方案好的,我喜欢: 在Utility.js中
function SetFieldReadability(selector, status){
var itemDetails = {
modelName : {
visibility : 'visible',
readOnly : {
1 : true, // Approved
2 : false, // Draft
3 : false,
5 : true
},
isMandatory : false
},
description : {
visibility : 'hidden',
readOnly : {
1 : false,
3 : false,
5 : true
},
isMandatory : true
}
};
var attr = selector.attr('elemName');
if(itemDetails[attr]){
var isReadOnly = itemDetails[attr].readOnly[status];
var isVisible = itemDetails[attr].visibility;
selector.attr('readonly',isReadOnly);
selector.css('visibility',isVisible);
}
}
在我的working.js中
SetFieldReadability($('#inpModelName'), 1);
试着看看Alloy,它让您从一开始就拥有非常好的MVC结构。还可以尝试发布一些示例代码,以便更好地解释。
SetFieldReadability($('#inpModelName'), 1);