ExtJS 4 - MessageBox提示将输入字段类型更改为密码

时间:2014-11-15 12:23:40

标签: extjs extjs4 extjs4.2

美好的一天。我正在创建一个Web应用程序,它不时显示一个消息框。我有一个消息框,要求用户输入密码,我希望该字段类型为密码。到目前为止,我已经尝试了几件事,但它们似乎都没有用,它们仍然将文本显示为纯文本而不是点或星号。

这是我的代码:

var mb = Ext.MessageBox.prompt({
    title: 'Enter Override Password.',
    msg: 'Please Enter the Override Password to Reprint:',
    password: true, //this does not work
    width: 300,
    height: 125,
    multiline: 1,
    inputType: 'password', //this does not work
    value: '',
    buttons: Ext.MessageBox.YESNO,
    fn: myCallback,
    cls: 'msgbox',
    baseCls: 'msgbox',
    icon: Ext.MessageBox.WARNING
});
mb.textField.inputType = 'password'; //this does not work

有谁知道如何将输入字段指定为密码类型?似乎ExtJS 4.2不支持它。提前致谢。

3 个答案:

答案 0 :(得分:1)

这是我尝试过的,到目前为止一直有效。我现在唯一的问题是造型,这是另一个问题。

var myMsgBox = new Ext.window.MessageBox({
    cls: 'msgbox',
    bodyCls: 'popWindow'
});
myMsgBox.textField.inputType = 'password';
myMsgBox.textField.width = 240;
myMsgBox.textField.center();
myMsgBox.prompt(title, msg, myCallback);

答案 1 :(得分:0)

我认为这有点超出了Ext.MessageBox的设计范围。在查看源代码时,传入输入的唯一内容是值,如果设置了多行,则为高度。

您可以做的是创建自己的组件,扩展Ext.Window并将模态设置为true。这允许您根据需要自定义窗口。

答案 2 :(得分:0)

而不是Ext.MessageBox.prompt尝试创建一个扩展Ext.Window的自定义窗口,单击按钮时弹出,并将模态设置为true并对齐到中心。

相关问题