Ajax.NET Professional and the "missing" context
I had done a lot of changes to the JavaScript methods. With the new version I had removed the context that you could provide to have something like a "this" context.
-- Before --
function doTest1() {
var context = document.getElementById("input1");
AjaxNamespace.AjaxClass.MyMethod(1, 2, 3, doTest1_callback, context);
}
function doTest1_callback(res) {
res.context = res.value;
}
doTest1(); // invoke the method
-- Using Ajax.NET Professional --
function myClass() {}
myClass.prototype.doTest1 = function() {
this.inputEle = document.getElementById("input1");
AjaxNamespace.AjaxClass.MyMethod(1, 2, 3, this.doTest1_callback.bind(this));
}
myClass.prototype.doTest_callback = function(res) {
this.inputEle = res.value;
}
var c = new myClass();
c.doTest1(); // invoke the method
There are more ways to implement "classes" on the client with a context. Another way is to inherit from the AJAX wrapper class:
function myClass = Class.create();
myClass.prototype = (new AjaxNamespace.AjaxClass()).extend({
doTest1: function() {
this.inputEle = document.getElementById("input1");
this.MyMethod(1, 2, 3, this.doTest1_callback.bind(this));
},
doTest1_callback: function(res){
this.inputEle = res.value;
}
});
var c = new myClass();
c.doTest1(); // invoke the method
Any feedback?