Jump to content

Adding Custom Function To An Object


akphidelt2007

Recommended Posts

Ok, I really should know this by now and I'm in a time crunch so I thought I might just ask to see if someone can point me in the right direction. So I build a table class in jquery. What I want now is to be able to handle custom functions that come about for the individuals tables I create. What I do now is have a customChange function and just use switch() to find the keyword and then run the function. But this is mighty inefficient and I have to constantly go in to the object and add the single custom instance.

 

So for example, say on one table when the Qty is changed I want the Cost column to autocalculate and trigger a warning if the cost is above a certain value.

 

I load up my javascript like this...

 

$this->ajax->loadScript("
$(function() {
   var tbl = new Tablev2('beta');
   tbl.init({'mysqlTable':'msr_data'});    
   tbl.ajaxDD('tid',{'text':'abbr','tbl':'budget_cats','locked':true});
   tbl.ajaxDD('mid',{'text':'description','values':'mid','tbl':'modules','width':400,'numChars':2,'locked':true});
   tbl.ajaxDD('sid',{'text':'description','values':'old_pav_sid','tbl':'systems','width':400,'numChars':2,'locked':true});
   tbl.ajaxDD('manufacturer',{'text':'manufacturer','tbl':'msr_data','width':200,'numChars':1});
   tbl.ajaxDD('line_description',{'text':'line_description','tbl':'msr_data','width':600,'numChars':2});
   tbl.customChangeEvent('sid','getBudget');
   tbl.customChangeEvent('per_unit_cost','calculateCost');
   tbl.loadCustomMysql('tid',{'tbl':'budget_cats','matchField':'abbr','returnField':'bid','int':1});
   tbl.loadCustomMysql('sid',{'tbl':'systems','matchField':'old_pav_sid','returnField':'sid','int':1});
});
");

 

How can I type up the function within the $this->ajax->loadScript function so I do not have to actually manipulate the object but still use the variables within the object? The way I do it now is through the tbl.customChangeEvent() and then I just write the function in the class itself. I want to be able to write the function on the script that is creating the table.

 

Any help will be greatly appreciated. Thanks

Link to comment
Share on other sites

So I'm still trying to put the pieces together. Here is more of a clear picture of what I want.

 


$this->ajax->loadScript(
$(function() {
var tbl = new Tablev2('beta');
tbl.init({'mysqlTable':'msr_data'});

//right here, I want to add the ability to calculate the cost based on the unit_cost and qty
//I'd like to do something like this

tbl.addFunctionSomeHow(function() {
$('#qty').blur(function() {
alert(this.activeCell.attr('id'));
}.bind(this));
}.bind(this));
});
);
[/Code]

 

This is literally just an example of what I want to do. I want to be able to have access to this so I can manipulate the table via the custom function. Do not worry about the actual validity of the function above. I just types it up for a broad example of what I'm trying to accomplish.

 

Thanks again.

Edited by akphidelt2007
Link to comment
Share on other sites

This thread is more than a year old. Please don't revive it unless you have something important to add.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.