result_ids are not in the jquery documentation for ajax. The ajax calls are set to type “json” using the “get” method. However if you do not send the result_ids param or you don't set the type to “json” or you load the load the page manually you don't get a json result with say, category_items_42 contents back you get the full html page.
However there is some bug in the data returned by this parser, it always cuts off the data at around 20,000 characters so if there's more characters than that it breaks the page.
I'm working on a custom template built from the ground up and this problem I have been trying to debug on and off over 3 days. What are the result_ids and where does it take an html page and the result ids and build json out of them? It gets done before the jquery responseText and stepping repeatidly through the debugger doesn't reveal where this magic seems to happen. If you're familiar with this weird bit of magic that happens with the cart please let me know. I'm down to tracing result_ids through every file and hoping I come across it.
I don't suppose there is a way to delete or edit this post? In any case I found the problem.
It was in php and not javascript, for some reason the php code uses an html comment to signify the end of the data stream, and php's substr function doesn't even complain and has erratic behavior if no $end is found for the substr function and it is null. Not only does it not complain, neither does the library do any type checking or validation so no errors were thrown by either cs cart or php when this $end delimeter of the form was not found.