1時間近く検索しましたが、どこにエラーがあるのかわかりません。 。 。落ち込んだ
マウスの左側にあるツリー ノードをクリックして、右側にタブを作成しました。これはすでに可能であったため、新しく作成したタブにグリッドをネストしました。
奇妙な問題が発生しました。 。
FF と IE ではエラーは報告されません。しかし、グリッドは表示されません。もともと私のコードが間違っていると思っていました。そこで私は自分のコードの問題を必死に探し、誤って FF の firbug プラグイン インターフェイスをオフにしてしまい、グリッドが現実になりました。 。 。グリッドは、ウィンドウに変更がある場合にのみ表示されることがわかりました。
これは私のコードの問題ですか、それともバグですか?どうやって解決すればいいでしょうか?
付け加えますと、TabPanel でアイテムを使用してグリッド オブジェクトを直接管理することに問題はありません。しかし、イベントを追加して管理した後、問題が発生しました。
ファイルはすべてクラス パッケージにカプセル化されます。ですので要点部分のみ掲載します
こちらは試聴会です。
Java コード
listeners:{
'click':function(node,event) {
event.stopEvent();
//ルートノードの選択判定を解除します
if (node.text=="SamPeng" || node.text == "記事管理" || node.text == "製品管理" || node.text == "情報管理" || node.text == " 訪問者管理"){
}else{
var n = main.getComponent(node.id);
if (!n) { //パネルが開かれているかどうかを判断します
//その場合は、記事リストをクリックし、新しいリスト オブジェクトを作成して、新しいタブにスローします。
if(node.text == "Article List"){
var Grid=new SamPeng.account.list();
n = main.add({
'id':node.id,
'title':node.text,
items: [{layout:"fit",items:grid}]
});}
}
main.setActiveTab(n);
}
}
リスナー:{
'click':function(node,event) {
.StopeVent();パネルが開かれました
// 記事のリストの場合、新しいリスト オブジェクトを作成し、新しいタブに投入します
if (node.text == "article list list "){
var Grid = new sampeng.account.list(); 'id':node.id、
'title':node.text、
次に、タブ パネル作成クラス
Java コード
* Copyright(c) 2008-2010, SamPeng Inc.
*/
package("SamPeng.panel"); **
* 機能: 中央にメイン表示パネルを作成するために使用されます
* 作成者: SamPeng
* 時刻: 2008 年 9 月 24 日 1:24:42
*/
SamPeng.panel.main = function(config){
var config=config ||
var deconfig={
renderTo:'mainlay' ,
width:1000,
height:561,
activeTab:0,
plain: true,
border: true,
tabPosition: 'top',
frame: true,
autoScroll: true,
enableTabScroll:true, //幅が幅を超える場合、追加のスクロール バーが自動的に両側に表示されます
items:[{
title:"ホームページ"
]
}
Ext.applyIf(config,deconfig);
SamPeng.panel.main.superclass.constructor.call(this,config); extend(SamPeng.panel .main,Ext.TabPanel);
* Copyright(c) 2008-2010, SamPeng Inc.
*/
package("SamPeng.panel"); *
* 機能: 中央にメイン表示パネルを作成するために使用されます
* 作成者: SamPeng
* 時刻: 2008 年 9 月 24 日 1:24:42
* /
SamPeng.panel.main = function(config){
var config=config ||
var deconfig={
renderTo:'mainlay' 、
width:1000、
height:561、
activeTab:0、
plain: true、
border: true、
tabPosition: 'top'、
フレーム: true,
autoScroll: true,
enableTabScroll:true,//幅を超えると、追加のスクロール バーが自動的に両側に表示されます
items:[{
title: "Home" 🎜> 🎜> Ext.applyIf(config,deconfig);
SamPeng.panel.main.superclass.constructor.call(this,config);
}
Ext.extend(SamPeng.panel.main,Ext) .TabPanel);
グリッドはデータ ソースと属性のみを貼り付けます。
Java コード
/*************************************************** * ***
* テーブルのデータソースを作成します
* 背景にリンクし、各ページのデータ一覧を返します
* Json データ形式で渡します
****** **** *********************************************/
this.dataStore = new Ext.data.Store({
プロキシ: new Ext.data.HttpProxy({
url: ' php/article_list.php',
disableCaching:false
})、
reader: new Ext.data.JsonReader({
root: 'results',
totalProperty: 'total',
id:'id'
},[
{name: 'id'},
{name: 'name'},
{name: 'typename'},
{name: 'time'},
])
});
this.dataStore.load({params:{start:0, limit:this.myPageSize}}); 。 。
。 。 。
を大幅に省略します。 。 。
/*************************************************** * ***
* 編集リストパネル (GridPanel) を構築します
******************************* ***********************/
SamPeng.account.list.superclass.constructor.call(this, {
id: 'list-account-panel',
ds: this.dataStore 、
cm: art_cm、
sm: selectBoxModel、
height:500、
tbar: ページングバー、
bbar: メニューバー、
loadMask: {msg: 'データを読み取り中。 '},
enableColumnHide: false,
autoScroll:true
//region:'center'
}); , {
reload : function() {
this.dataStore.load({params:{start:0, limit:this.myPageSize}});
},
// データの削除を呼び出します
//サーバーはパラメータを受け入れて削除されたデータを返します
deleteData: function (jsonData) {
this.dataStore.load({params:{start:0, limit:this.myPageSize, delData: jsonData} });
}
/*************************************************** * ***
* テーブルのデータ ソースを確立します
******************************** **************/
this.dataStore = new Ext.data.Store({
プロキシ: new Ext.data.HttpProxy( {
URL: 'php/article_list.php',
disableCaching:false
}),
リーダー: new Ext.data.JsonReader({
ルート: 'results' ,
totalProperty: 'total',
id:'id'
},[
{name: 'name'},
{ name: 'typename'},
{name: '時間'}、
myPageSize}}); 。 。
。 。 。
を大幅に省略します。 。 。
/*************************************************** * ***
* 編集リストパネル (GridPanel) を構築します
******************************* ** **********************/
SamPeng.account.list.superclass.constructor.call(this, {
id: 'list-account-panel',
ds: this.dataストア、
cm: art_cm,
sm: selectBoxModel,
高さ:500,
tbar: ページングバー、
bbar: menubar,
loadMask: {msg: '读取データ中 . ..'},
enableColumnHide: false,
autoScroll:true
//region:'center'
});
Ext.extend(SamPeng.account.list, Ext.grid.GridPanel, {
reload : function() {
this.dataStore.load({params:{start:0, limit:this. myPageSize}});
},
// 调用删除データ
// サービス务器通接受パラメータ返删除的データ
deleteData : function (jsonData) {
this.dataStore.load( {params:{start:0, limit:this.myPageSize, delData:jsonData}});
}
谢谢各位大侠了!
问题状態况是我浏览器不動,グリッド死活不显示さらに、私が設定したパラメータの大きさが示されています。これだけが期待されています。
は本来、問題は、Firebug に問題はなく、Firebug がサービス エンドからデータを取得していることを確認しました。 🎜> これは Extjs のバグである可能性があり、ネットワーク上の同様の解決方法で次のことが検出されました。题最後の層のコンテナは通常、ビューポートのコミュニティに似ていますが、最初は分からず、グリッドを含むパネルを再度再レンダリングしても効果はなく、ビューポートを再レンダリングします。一切OK了!

JavaScriptは、現代のWeb開発のコア言語であり、その多様性と柔軟性に広く使用されています。 1)フロントエンド開発:DOM操作と最新のフレームワーク(React、Vue.JS、Angularなど)を通じて、動的なWebページとシングルページアプリケーションを構築します。 2)サーバー側の開発:node.jsは、非ブロッキングI/Oモデルを使用して、高い並行性とリアルタイムアプリケーションを処理します。 3)モバイルおよびデスクトップアプリケーション開発:クロスプラットフォーム開発は、反応および電子を通じて実現され、開発効率を向上させます。

JavaScriptの最新トレンドには、TypeScriptの台頭、最新のフレームワークとライブラリの人気、WebAssemblyの適用が含まれます。将来の見通しは、より強力なタイプシステム、サーバー側のJavaScriptの開発、人工知能と機械学習の拡大、およびIoTおよびEDGEコンピューティングの可能性をカバーしています。

JavaScriptは現代のWeb開発の基礎であり、その主な機能には、イベント駆動型のプログラミング、動的コンテンツ生成、非同期プログラミングが含まれます。 1)イベント駆動型プログラミングにより、Webページはユーザー操作に応じて動的に変更できます。 2)動的コンテンツ生成により、条件に応じてページコンテンツを調整できます。 3)非同期プログラミングにより、ユーザーインターフェイスがブロックされないようにします。 JavaScriptは、Webインタラクション、シングルページアプリケーション、サーバー側の開発で広く使用されており、ユーザーエクスペリエンスとクロスプラットフォーム開発の柔軟性を大幅に改善しています。

Pythonはデータサイエンスや機械学習により適していますが、JavaScriptはフロントエンドとフルスタックの開発により適しています。 1. Pythonは、簡潔な構文とリッチライブラリエコシステムで知られており、データ分析とWeb開発に適しています。 2。JavaScriptは、フロントエンド開発の中核です。 node.jsはサーバー側のプログラミングをサポートしており、フルスタック開発に適しています。

JavaScriptは、最新のブラウザにすでに組み込まれているため、インストールを必要としません。開始するには、テキストエディターとブラウザのみが必要です。 1)ブラウザ環境では、タグを介してHTMLファイルを埋め込んで実行します。 2)node.js環境では、node.jsをダウンロードしてインストールした後、コマンドラインを介してJavaScriptファイルを実行します。

Quartzタイマーを使用してタスクをスケジュールする場合、Quartzでタスク通知を事前に送信する方法、タスクの実行時間はCron式によって設定されます。今...

JavaScriptプログラミング、プロトタイプチェーンの関数パラメーターの理解と操作のJavaScriptのプロトタイプチェーンの関数のパラメーターを取得する方法は、一般的で重要なタスクです...

WeChatアプレットWeb-ViewでVue.jsを使用する動的スタイルの変位障害がvue.jsを使用している理由の分析...


ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

ZendStudio 13.5.1 Mac
強力な PHP 統合開発環境

AtomエディタMac版ダウンロード
最も人気のあるオープンソースエディター

Safe Exam Browser
Safe Exam Browser は、オンライン試験を安全に受験するための安全なブラウザ環境です。このソフトウェアは、あらゆるコンピュータを安全なワークステーションに変えます。あらゆるユーティリティへのアクセスを制御し、学生が無許可のリソースを使用するのを防ぎます。

SublimeText3 Linux 新バージョン
SublimeText3 Linux 最新バージョン

SublimeText3 中国語版
中国語版、とても使いやすい
