Re: AJAX callback:value: via POST message

"Esteban A. Maringolo" <[email protected]>
Newsgroups gmane.comp.lang.smalltalk.squeak.seaside
Message-ID <[email protected]>
This was the first thing I tried, but the "onComplete:" handler was not
allowed in the options, I then tried some other stuff but caused a full
page response).

Regards!

On 21/06/2018 14:07, Paul DeBruicker wrote:
> You can change the 
> 
> html jQuery ajax
> 
> 
> to
> 
> 
> html jQuery post 
> 
> 
> and it should POST the data.  
> 
> 
> 
> 
> Esteban A. Maringolo wrote
>> Hi,
>>
>> I'm currently doing a an AJAX call with #callback:value: where the value
>> is a stringified JSON I built at client side and which on completion
>> returns a script file. But the value payload is passed encoded in the
>> URI, and this has a size limit.
>>
>> Is there a way to do a callback:value: using POST instead of GET?
>>
>> The call is something like this:
>>
>> ( html jQuery id: self tableId )
>>   on: 'paste'
>>   selector: nil
>>   data: ( ( html jQuery ajax )
>>     callback: [ :json | self pasteMatrix: ( WAJsonParser parse: json ) ]
>>       value: ( JSStream on: 'JSON.stringify(arguments[0])' );
>>     onComplete: ( html jQuery ajax
>>       script: [ :s | self scriptValidatedReloadOn: s ] ) ) asFunction.
>>   call: (JSStream on: 'pasteHandler' )
>>
>>
>> And I'd like to have a POST based function that sends the JSON string in
>> it's `data` payload instead.
>>
>> Regards,
>>
>>
>> Appendix A:
>>
>> `pasteHandler` is a custom function that detects if the contents being
>> pasted into a text input are not a single value but instead are values
>> copied from an Excel file, in tab separated format, and if so overrides
>> the event propagation, creates a matrix (array of arrays), and calls the
>> function passed to the `data:` parameter in the event handler.
>>
>> Because the inputs are presented as separate 
>> <input>
>>  tags within a
>> table, that's the only way I found to preserve the convenience of having
>> separate inputs, but with the behavior of a single "grid" for pasting
>> (and copying) data.
>>
>>
>> function pasteHandler(event){
>>   var clipboardData, pastedData;
>>   var e = event.originalEvent;
>>   var matrix;
>>
>>   clipboardData = e.clipboardData || window.clipboardData;
>>   if (!clipboardData) return false;
>>
>>   pastedData = clipboardData.getData("Text");
>>   matrix = tabMatrix(pastedData);
>>   if (isMatrix(matrix)) {
>>     // Stop data actually being pasted
>>     var point = pastePoint(e.target);
>>     var matrixHandler = event.data;
>>     if (matrixHandler) {
>>       e.stopPropagation();
>>       e.preventDefault();
>>       matrixHandler({"matrix": matrix, "point": point});
>>     }
>>   }
>> }
>>
>>
>> -- 
>> Esteban A. Maringolo
>> _______________________________________________
>> seaside mailing list
> 
>> [email protected]
> 
>> http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside
> 
> 
> 
> 
> 
> --
> Sent from: http://forum.world.st/Seaside-General-f86180.html
> _______________________________________________
> seaside mailing list
> [email protected]
> http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside
> 

-- 
Esteban A. Maringolo
_______________________________________________
seaside mailing list
[email protected]
http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.