我正在开发一个程序,该程序创建一个电子表格类型格式,其中包含一组排列在表格中的输入框。我目前对所有内容都进行了颜色编码,以便在将数据上传到表中时,一些正则表达式有助于更改颜色。但仅在上传时。
但是,我还希望能够在手动输入数据时动态更改颜色(而不是仅上传文件并调用颜色完成。)
我被告知要研究使用允许匹配正则表达式的input
标签属性。pattern
这似乎非常适用,但我不知道如何编写一个使用它的 JavaScript 函数。我有我的正则表达式,我知道我想使用什么颜色,但我不知道如何在模式中运行一个函数。
我的上传通过对每条数据运行一个函数来为这些框着色,如果它是某种颜色,它将把它推入那个特定颜色的数组中。另一个函数在创建表时检查哪些数据在哪个数组中。然后它返回“红色”、“蓝色”或“绿色”。我在标签class
属性中使用的所有这些。input
所以假设我有
var blue_regex = (/([A-Z0-9]+\*\d+:\d+:\d+)(.+)/);
var red_regex = /(\*\d\d$)/;
和
makeColors = function(data) {
if (red.indexOf(data) >= 0) {
return "red";
}
else if (blue.indexOf(data) >= 0) {
return "blue";
}
else {
return "green"; //returns green by default
};
};
where在标签makeColors
的类中被调用。input
我不想处理从我提到的这些红色和蓝色数组中推送和弹出项目,而只是使用pattern
属性更改颜色,请记住我也在使用该class
方法来保存这些颜色。
我该怎么做呢?