Ext.Ajax.request无法正常工作

时间:2015-12-04 08:17:02

标签: url model-view-controller extjs

file structure image enter image description here ![ this is the project structure I am using. On adding a local URL like this below code is not working. url:'data/showStudentInfo.html'] 3我使用的是Ext Js 4.1.1版 在我的应用程序中,我有一个使用商店的网格。 点击“点击我”按钮我想重定向到服务器,为了测试目的我使用的是基本的谷歌网址, 但是我认为Ext.Ajax.Request类没有用 请帮助,因为我是Ext js的新手,我不知道我犯的错误。 我在notepad ++以及eclipse ide(indigo版本)中尝试这个。 两个具有相同的输出,Ext.Ajax.Request部分无法正常工作。 如果有人提出建议就好像我想发送一样,这将会有很大的帮助 提前感谢 下面是我的html和js文件

practiseCellEditEx.js

Ext.require([
    'Ext.data.*',
    'Ext.Ajax.',
    'Ext.grid.*'
]);

function getRandomDate() {
    var from = new Date(1900, 0, 1).getTime();
    var to = new Date().getTime();
    var date = new Date(from + Math.random() * (to - from));    
    return Ext.Date.clearTime(date);
}

function createFakeData(count) {
    var firstNames   = ['Ed', 'Tommy', 'Aaron', 'Abe'];
    var lastNames    = ['Spencer', 'Maintz', 'Conran', 'Elias'];            
    var data = [];
    for (var i = 0; i < count ; i++) {
        var dob = getRandomDate();           
        var firstNameId = Math.floor(Math.random() * firstNames.length);
        var lastNameId  = Math.floor(Math.random() * lastNames.length);
        var name        = Ext.String.format("{0} {1}", firstNames[firstNameId], lastNames[lastNameId]);
        data.push([name, dob]);
    }
    return data;
}

Ext.onReady(function(){
    Ext.define('Person',{
        extend: 'Ext.data.Model',
        fields: ['Name', 'dob']
    });

    var store = Ext.create('Ext.data.Store', {
        model: 'Person',
        autoLoad: true,
        proxy: {
            type: 'memory',
            data: createFakeData(10),
            reader: {type: 'array'}
        },
        sorters: [{
            direction:'ASC'
        }]
    });

    Ext.create('Ext.grid.Panel', {
        store: store,
        plugins: [
            Ext.create('Ext.grid.plugin.CellEditing', {
                clicksToEdit : 1
            })
        ],
        columns: [
            {
                text: "Name", 
                width:120, 
                dataIndex: 'Name',
                editor : {
                    xtype: 'textfield',
                    allowBlank:false
                }
            },
            {
                text: "DOB", 
                width: 120, 
                dataIndex: 'dob', 
                renderer: Ext.util.Format.dateRenderer('M d, Y'),
                editor: {
                    xtype: 'datefield',
                    format: 'M d, Y',
                    minValue: '01/01/1900',
                    maxValue: new Date()
                }
            },
            {
                xtype: 'actioncolumn',
                width: 30,
                sortable: false,
                menuDisabled: true,
                items: [{
                    icon: 'http://etf-prod-projects-1415177589.us-east-1.elb.amazonaws.com/trac/docasu/export/2/trunk/client/extjs/shared/icons/fam/delete.gif',
                    handler: function(grid, rowIndex, colIndex) {
                       store.removeAt(rowIndex);
                    }
                }]
            }
        ],
        renderTo:'example-grid',
        width: 280,
        height: 280

    });  

    Ext.create('Ext.Button', {
    text: 'Click me',
   // renderTo: Ext.getBody(),  
    renderTo:'myBtn',
    handler: getName
});

function getName (btn)  
   {
       alert("hello");
       var records = store.getAt(1);
       alert('the name at index 1 is:'+records.get('Name'));
       Ext.Ajax.request({
           url                 : 'https://www.google.co.in/'
                  });
   };
    /*
    function buttonClicked() {
    Ext.MessageBox.confirm( 'Delete this part ? :' );
}*/

});

practiseCellEditEx.html

<!DOCTYPE html>
<html>
<head>
    <meta charset=utf-8 />
    <title>ExtJS Samples</title>
    <link rel="stylesheet" type="text/css" href="../resources/css/ext-all.css" />
    <script type="text/javascript" src="../adapter/ext/ext-base.js"></script>
    <script type="text/javascript" src="../ext-all.js"></script>
    <script type="text/javascript" src="practiseCellEditEx.js"></script>

</head>
<body>
    <h2> <b>Helllo , today's Date is 02.12.2015 </b></h2>
        <div id="example-grid"></div>
        <!--<button id="myBtn"></button>-->
        <div id="myBtn"></div>
</body>


</html>

1 个答案:

答案 0 :(得分:0)

问题似乎只是google.com的请求。在我的浏览器中,它被阻止,因为它是一个跨源请求(对另一个域的ajax请求),另请参阅此处以获取更多信息:https://en.wikipedia.org/wiki/Same-origin_policy

对本地URL请求的相同代码可以正常工作。