我是Titanium的新手。我正在使用钛开发一个ipap应用程序。我的应用程序需要一个只允许1234AA或1234 AA格式的文本框。(AA / aa)。我想在文本框下显示一条消息"格式无效:1234 AA"在输入正确的格式后,在texbox.it中输入文本时应该会消失。我在谷歌搜索,但我没有找到任何东西。 如何为此编写代码? 谢谢!
我尝试了另一种方式:我添加了一个eventlistener'点击'到带代码的按钮
submit.addeventlistener('click',function(){
pattern="[0-9]{4}\s?[A-Za-z]{2}";
var textfieldvalue=textfield.value;
if(!textfieldvalue.match(pattern))
{
var errorlabel=Ti.UI.createlabel({color:'black',text:'Invalid format:
1234AB'...});
win.add(error);
}
else{
//opening other window
}
});
它的工作但文本框允许超过4位数字和超过2个字符(我给出了模式中的确切数字)..我的模式中出了什么问题?
我仍然想要这个代码用于textfield(在输入正确的格式时输入textfield时显示错误信息)我必须使用哪个事件用于textfield?
答案 0 :(得分:0)
您可以将“pattern”(正则表达式)设置为输入字段。在这种情况下,它就像pattern="[0-9Aa]{4}\s?[0-9Aa]{2}"
。
然后,您必须将oninvalid
事件侦听器设置为输入字段。当不满足模式匹配时,这将触发。例如oninvalid="showInvalidFormatMsg()"
或优先fieldElem.addEventListener("invalid", showInvalidFormatMsg)
;
在此之后,您可以使用带有setCustomValidity功能的内置工具提示,也可以只在showInvalidFormatMsg
我无法编写工作代码atm。但是如果你无法按照这些说明进行操作,并且没有人回答完整的代码,我会尝试找一些免费的地方来帮助你。