-
December 15th, 2006, 02:08 AM
#1
Recommend an AJAX IDE
Recommend an AJAX IDE
Simultaneously Support AJAX applications development in Java and .NET.
The programming language including Java, C# and VB.
AJAX UI Library, totally visual design AJAX pattern.
More powerful Coding aoto-complement.
so more information...
May free downlod please to http://www.joyistar.com
-
December 18th, 2006, 11:47 PM
#2
Re: Recommend an AJAX IDE
发Data binding analysis of AJAX DataSet and DBControl in AJAX WebShop
Viky commend
Brief introduction:
Register the Objects list related to data, and when the related events happen, an information should be send to these objects. After they receive these information, the related operation would carry out according to the information ID and data.
Information ID:
modify:12
open:0
refresh:5
close:7
move record:3
append:1
delete:2
firedatachange:6
post:13
cancel:9
apply:8
fieldvalue firechange:4
notify lookup dataset:11
Codes analysis:
Here we will take the DBEdit as the example to analysis the way of data binding.
Set the property of DBEdit as DataSet or SetDataSet. Register DBEdit to the data binding list by LinkObj. Actually, the data binding list is an array. When the events happen in DataSet, system will call Notify to notice all the objects in the list and all the objects have an implement of the interface – HandleMessage to be called by DataSet. Refer to the source code below:
DataSet.prototype.Notify=function(act,recno,p){var os=this.linkobjs;if(!os||this.AutoControl==false)return;for(var j=0;j<os.length;j++)if(os[j].HandleMessage)os[j].HandleMessage(this,act,recno,p);}
function DC_handlemessage(sender,msg,recno)
{
if(msg!=6&&msg!=12)
this.Refresh();
}
function DC_refresh()
{
var v,f;
if(this.DataSet.Active){
f=this.DataSet.Fields.Field[this.DataField];
if(!f)jcl_err(this.Name+'.DataField:'+this.DataField+Err_NoField);
if(f){
this.readOnly=f.ReadOnly;
v=f.GetValue();
if(v==null)v='';this.value=v;
if(this.Type=='span')this.innerHTML=v;//DBLabel
if(this.Type=='checkbox'){
if(this.CheckedValue == v){
this.checked=true;
this.defaultChecked=true;
}
else{
this.checked=false;
}
}
}
}
else{
this.value='';
if(this.Type=='span')this.innerHTML='';//DBLabel
}
}
Posting Permissions
- You may not post new threads
- You may not post replies
- You may not post attachments
- You may not edit your posts
-
Forum Rules
|
Click Here to Expand Forum to Full Width
|