Sim, sim, então usar o SOAP geralmente não é a solução preferida ao trabalhar com Javascript. É muito mais fácil lidar com dados em JSON do que em XML. Mas às vezes você não pode evitar.
Para ajudar, eu comecei uma biblioteca simples que ajuda a tornar nossa vida um pouco mais fácil. Não é nada grande ainda, não valida os dados ainda e com certeza tem muitos bugs. Em outras palavras: não o use para produção sem entender as falhas potenciais. Se for provável que os dados que você está enviando para o servidor tenham “<” ou “>”, tome cuidado – a biblioteca muito provavelmente não funcionará. Tenho certeza de que há coisas que ainda nem comecei a considerar.
Mesmo assim, é um começo e não requer nenhuma biblioteca adicional. Posso verificar que funciona de dentro do PhoneGap (que era o ponto principal), pelo menos nos navegadores WebKit. O Android 2.x pode ter um bug com o cabeçalho “content-length” – nesse caso, apenas remova essa linha. Não tenho ideia sobre WP7 ou WP8. No iOS, ele simplesmente funciona.
A essência está aqui, sob uma licença do MIT: https://gist.github.com/3786070
Sinta-se à vontade para bifurcar, melhorar, usar, etc. Se você encontrar um bug ou implementar uma correção, seria bom compartilhá-lo de volta, mas como está no MIT, você não precisa fazer isso.