ho notato che trattando la stringa "data" sostituendo gli spazi con il carattere + vengono mantenuti correttamente gli spazi.
Però non sono sicuro che questa sia la strada corretta.
codice:
        dati = "funz=scaricoart&artsel[]=" + $("#idprd").val() + "&idmov=" + $("#idmov").val() + "&nord=" + $("#nord").val() + "&locazione=" + $("#locazione").val();
        dati = dati.replace(" ", "+");
        $.ajax({
            type: "POST",
            url: "include/function_mag.asp",
            dataType: "html",
            //data: "funz=scaricoart&artsel[]=" + $("#idprd").val() + "&idmov=" + $("#idmov").val() + "&nord=" + $("#nord").val() + "&locazione=" + $("#locazione").val(),
            data: dati,
            async: true,
            cache: false,
            timeout: 30000,
            success: function (html) {
                $("#bttmovimenta").show();
                $("#caricamovimenta").hide();
                var html
                result = html.split("||");
                if (result[0] == "OK") {
                    $("#mess").html(result[2]);
                    SelProd($("#idprd").val());
                } else {
                    $("#mess").html("");
                    if (result[0] == "KO") {
                        $("#err").html(result[2]);
                    } else {
                        $("#err").html("Errore non previsto. Contattare l'amministratore");
                    }
                }
            }
        });