gpt4 book ai didi

javascript - 如何为 extJ 中的文本字段输入中的每封电子邮件制作不同的 div?

转载 作者:行者123 更新时间:2023-11-28 10:43:44 26 4
gpt4 key购买 nike

我创建了一个文本字段,我需要在其中输入电子邮件。我想将选择的每封电子邮件设置为不同的背景颜色(使其更加用户友好)。有没有办法在 Ext JS 中做到这一点?

请引用代码中的id“emailTo”。谢谢

enter image description here

var emailDlg = new Ext.Window(
{
width : 900,
height : 600,
minWidth : 300,
minHeight : 220,
closable : false,
modal : true,
resizable : false,
autoDestroy : true,
title : 'New email notification',
layout : 'fit',
buttonAlign : 'center',
items : [ {
xtype : 'form',
defaultType : 'textfield',

fieldDefaults : {
labelWidth : 60
},
layout : {
type : 'vbox',
align : 'stretch',
pack : 'start'
},
bodyPadding : 5,
border : false,
items : [ {
id : 'emailTo',
fieldLabel : 'To',
id : 'textInput',
name : 'to'
}, {
id : 'emailSubject',
fieldLabel : 'Subject',
name : 'subject'
}, {
id : "msgbody",
autoDestroy : true,
xtype : 'displayfield',
hideLabel : true,
name : 'msg',
flex : 1
} ]
} ],
});

最佳答案

Ext.define('App.ux.form.field.MultipleInputValueField', {
extend : 'Ext.form.field.Tag',
alias : ['widget.multiinputvaluefield', 'widget.multiinputvalue'],

/** @type Function */
validationFn: null,
/** @type RegEx */
validationRe: null,

filterPickList: true,

/**
* to be set
* @type Array (Enter , ;)
*/
keyPressKeys: [13, 186, 188],
splitChars: /[\n,;]/,

initComponent : function() {
var me = this;
var defConfig = {
editable: true,
displayField: 'id',
enableKeyEvents: true,
store: Ext.create('Ext.data.Store', {
fields: [{name: 'id', type: 'string'}],
idProperty: 'id'
})
};

Ext.apply(me, defConfig);
me.callParent();
},

listeners: {
keyup: function (me, e) {
var input = me.el.down('input').dom,
strArray = input.value.split(me.splitChars);

if( strArray.length>1 || Ext.Array.contains(me.keyPressKeys, e.keyCode) ) {
var vals = [];
Ext.each(strArray, function (str) {
str = str.trim();
if( Ext.isEmpty(str) )
return;
if( ( me.validationFn && Ext.isFunction(me.validationFn) && !me.validationFn(str) ) ||
( me.validationRe && !me.validationRe.test(str) ) )
return me.markInvalid(me.invalidText||'This field is not valid');

vals.push(str);
});
Ext.each((me.value||[]).reverse(), function (val) {
vals.unshift(val);
});
me.setValue(vals);
}
}
},

setValue: function (value, add, skipLoad) {
var me = this, data = [], vals = [];

if( !Ext.isEmpty(value) ) {
if( Ext.isString(value) )
value = value.split(me.splitChars);
if( !Ext.isArray(value) )
value = [value];

var addValues = function (val) {
if( Ext.isEmpty(val) )
return;
if( Ext.isString(val) ) {
data.push({id: val});
vals.push(val);
} else if( Ext.isObject(val) && val.isModel ) {
data.push({id: val.get('id')});
vals.push(val.get('id'));
} else if( Ext.isArray(val) ) {
addValues(val);
}
};

Ext.each(value, function (val) {
addValues(val);
});
}

if( me.el )
me.el.down('input').dom.value = '';

me.getStore().loadData(data);
App.ux.form.field.MultipleInputValueField.superclass.setValue.apply(me, [vals]);
}

});

关于javascript - 如何为 extJ 中的文本字段输入中的每封电子邮件制作不同的 div?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47422191/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com