Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/450.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Ext JS-验证文本字段_Javascript_Extjs_Extjs5_Sencha Architect - Fatal编程技术网

Javascript Ext JS-验证文本字段

Javascript Ext JS-验证文本字段,javascript,extjs,extjs5,sencha-architect,Javascript,Extjs,Extjs5,Sencha Architect,我是Ext JS的新手,所以我需要一些帮助来验证文本字段 要求是用户点击Add按钮,就会出现一个新窗口。这个新窗口n将有两个文本字段ID和Name。用户可以在名称fild中输入任何内容。但是ID不应该是PLStore中存在的ID 我知道我需要使用验证器,但如何通过PlStore存储值 {xtype: 'form', bodyPadding: 10, title: '', items: [ {

我是Ext JS的新手,所以我需要一些帮助来验证文本字段

要求是用户点击Add按钮,就会出现一个新窗口。这个新窗口n将有两个文本字段ID和Name。用户可以在名称fild中输入任何内容。但是ID不应该是PLStore中存在的ID

我知道我需要使用验证器,但如何通过PlStore存储值

{xtype: 'form',
            bodyPadding: 10,
            title: '',
            items: [
                {
                    xtype: 'textfield',
                    store: 'PLStore',
                    anchor: '100%',
                    fieldLabel: 'ID'
                },
                {
                    xtype: 'textfield',
                    anchor: '100%',
                    fieldLabel: 'Name'
                },
PLStore包含以下XML:

<?xml version="1.0" encoding="utf-8"?>
<Rowsets CachedTime="" DateCreated="2015-06-29T06:30:24" EndDate="2015-06-29T06:30:24" StartDate="2015-06-29T05:30:24" Version="15.0 SP4 Patch 4 (Jun 3, 2015)">
    <Rowset>

        <Row>
            <PLName>CA</PLName>
            <PLID>1001</PLID>
        </Row>
<Row>
            <PLName>VA</PLName>
            <PLID>1002</PLID>
        </Row>
<Row>
            <PLName>MH</PLName>
            <PLID>1003</PLID>
        </Row>

    </Rowset>
</Rowsets>

加利福尼亚州
1001
弗吉尼亚州
1002
MH
1003
所以,若用户将ID设置为1001、1002或1003,则会弹出一个错误

怎么办


提前谢谢

如果您使用的是Ext>4.0ish,那么validator属性就正确了。您应该能够将其设置为自定义函数,并在其中进行验证。为了对照存储进行检查,一个选项是为该存储分配一个
storeId
,这样您就可以获取对它的引用以进行验证。因此,您的“id”字段配置可能类似于:

{
    xtype: 'textfield',
    anchor: '100%',
    fieldLabel: 'ID',
    validator: function(fieldVal) {
        var ds = Ext.getStore('myStoreId'),
            ix = ds.find('id', fieldVal);
        return ix < 0;
    }
}
{
xtype:'textfield',
主播:100%,
字段标签:“ID”,
验证器:函数(fieldVal){
var ds=Ext.getStore('myStoreId'),
ix=ds.find('id',fieldVal);
返回ix<0;
}
}
其中,“myStoreId”是您分配给数据存储的“storeId”,而“id”被假定为我们要查找的字段的id

我已经有一段时间没有使用这个框架了,所以这里有一些文档,以防我在语法中遗漏了一些东西:


希望这有帮助

如果您使用的是Ext>4.0ish,那么validator属性就正确了。您应该能够将其设置为自定义函数,并在其中进行验证。为了对照存储进行检查,一个选项是为该存储分配一个
storeId
,这样您就可以获取对它的引用以进行验证。因此,您的“id”字段配置可能类似于:

{
    xtype: 'textfield',
    anchor: '100%',
    fieldLabel: 'ID',
    validator: function(fieldVal) {
        var ds = Ext.getStore('myStoreId'),
            ix = ds.find('id', fieldVal);
        return ix < 0;
    }
}
{
xtype:'textfield',
主播:100%,
字段标签:“ID”,
验证器:函数(fieldVal){
var ds=Ext.getStore('myStoreId'),
ix=ds.find('id',fieldVal);
返回ix<0;
}
}
其中,“myStoreId”是您分配给数据存储的“storeId”,而“id”被假定为我们要查找的字段的id

我已经有一段时间没有使用这个框架了,所以这里有一些文档,以防我在语法中遗漏了一些东西:


希望这有帮助

如果您使用的是Ext>4.0ish,那么validator属性就正确了。您应该能够将其设置为自定义函数,并在其中进行验证。为了对照存储进行检查,一个选项是为该存储分配一个
storeId
,这样您就可以获取对它的引用以进行验证。因此,您的“id”字段配置可能类似于:

{
    xtype: 'textfield',
    anchor: '100%',
    fieldLabel: 'ID',
    validator: function(fieldVal) {
        var ds = Ext.getStore('myStoreId'),
            ix = ds.find('id', fieldVal);
        return ix < 0;
    }
}
{
xtype:'textfield',
主播:100%,
字段标签:“ID”,
验证器:函数(fieldVal){
var ds=Ext.getStore('myStoreId'),
ix=ds.find('id',fieldVal);
返回ix<0;
}
}
其中,“myStoreId”是您分配给数据存储的“storeId”,而“id”被假定为我们要查找的字段的id

我已经有一段时间没有使用这个框架了,所以这里有一些文档,以防我在语法中遗漏了一些东西:


希望这有帮助

如果您使用的是Ext>4.0ish,那么validator属性就正确了。您应该能够将其设置为自定义函数,并在其中进行验证。为了对照存储进行检查,一个选项是为该存储分配一个
storeId
,这样您就可以获取对它的引用以进行验证。因此,您的“id”字段配置可能类似于:

{
    xtype: 'textfield',
    anchor: '100%',
    fieldLabel: 'ID',
    validator: function(fieldVal) {
        var ds = Ext.getStore('myStoreId'),
            ix = ds.find('id', fieldVal);
        return ix < 0;
    }
}
{
xtype:'textfield',
主播:100%,
字段标签:“ID”,
验证器:函数(fieldVal){
var ds=Ext.getStore('myStoreId'),
ix=ds.find('id',fieldVal);
返回ix<0;
}
}
其中,“myStoreId”是您分配给数据存储的“storeId”,而“id”被假定为我们要查找的字段的id

我已经有一段时间没有使用这个框架了,所以这里有一些文档,以防我在语法中遗漏了一些东西:


希望这有帮助

我会试试这个。看起来是一个有效的解决方案。我会更新你的。非常感谢!我会试试这个。看起来是一个有效的解决方案。我会更新你的。非常感谢!我会试试这个。看起来是一个有效的解决方案。我会更新你的。非常感谢!我会试试这个。看起来是一个有效的解决方案。我会更新你的。非常感谢!