title: Ajax not firing on prototype - I think I need to unset or remove a javascript method - causing havoc help!
body: <p>I'm working using scriptaculous library. However I'm facing some issues with inclusion of the JSON library for the prototype library. It adds a toJSONSTring and parseJSONSTRING method to all objects automatically and frankly this is causing havoc in places. Like I can't seem to use the Ajax Updater function and I suspect its because of this toJSONSTring method that has been attached to my options object which I pass to it.</p>
  
  <p>Is there anyway to unset or atleast somehow remove a function which has been added to the Object.</p>
  
  <p>EDIT:::</p>
  
  <p>Actually I'm trying to make an ajax request and I'm facing an issue in the</p>
  
  <pre><code>Ajax.Updater = Class.create(Ajax.Request,....
  </code></pre>
  
  <p>part of the prototype library. At the part where its supposed to execute and post an AJAX request it doesn't - especially at:</p>
  
  <pre><code>$super(url, options);
  </code></pre>
  
  <p>To be precise I'm using this sortable and editable table grid here at this url: 
  <a href="http://cloud.millstream.com.au/millstream.com.au/upload/code/tablekit/index.html" rel="nofollow noreferrer">http://cloud.millstream.com.au/millstream.com.au/upload/code/tablekit/index.html</a></p>
  
  <p>Basically you clcik on a table cell to edit it and push the OK button to confirm. Upon clicking the button an ajax request is made.</p>
  
  <p>The editable feature of the table calls the Ajax updater as follows in a submit function:</p>
  
  <pre><code>submit : function(cell, form) {
          var op = this.options;
          form = form ? form : cell.down('form');
          var head = $(TableKit.getHeaderCells(null, cell)[TableKit.getCellIndex(cell)]);
          var row = cell.up('tr');
          var table = cell.up('table');
          var ss = '&amp;row=' + (TableKit.getRowIndex(row)+1) + '&amp;cell=' + (TableKit.getCellIndex(cell)+1) + '&amp;id=' + row.id + '&amp;field=' + head.id + '&amp;' + Form.serialize(form);
  
  
          this.ajax = new Ajax.Updater(cell, op.ajaxURI || TableKit.option('editAjaxURI', table.id)[0], Object.extend(op.ajaxOptions || TableKit.option('editAjaxOptions', table.id)[0], {
              postBody : ss,
              onComplete : function() {
                  var data = TableKit.getCellData(cell);
                  data.active = false;
                  data.refresh = true; // mark cell cache for refreshing, in case cell contents has changed and sorting is applied
              }
          }));
      },
  </code></pre>
  
  <p>The problem is that the request is never made and I keep pushing the OK button to no avail.</p>
  
  <p>EDIT::::::::::::::::</p>
  
  <p>I'm still stumped here - I've even tried calling the Ajax.Updater function on my own and it won't work at all. Its like this function has officially been rendered as useless all of a sudden. I've made the changes you said but all to no avail :( frankly I'm running out of options here - another idea would be to ditch this tablekit and look for something else which has similar functionality in the hopes that THAT MIGHT work!</p>