Mandar variaveis via post com javascript?

Alguem sabe como, ao envez de eu mandar os valores dos controles de formulário via post mandar valores de variaveis via javascript.

Pode ser GET?

function envia(par1,par2){
    location.href='url?var1='+par1+'&var2='+par2;
}

Você esta enviando teu formulário via form ou ta implementando Ajax?

Se for via form, e somente colocar o valor post no atributo method da tag form.

Se for via Ajax, depende da implementação que você esteja usando. Por exemplo, eu acostumo usar Dojo Toolkit e chamo o método
dojo.xhrPost({…})

para fazer post sem ajax no javascript só tem um jeito, vc criar um formzinho e colocar as variavéis nele e pelo javascript só diser document.formulario.submit();,mas se for am ajax, procure na web pelo toolkit que vc estiver usando,mas se for via objeto mesmo no braço só colocar xmlthhpobj.send(dadosurlencoded); onde xmlthhpobj é seu objeto ajax e dadosurlencoded é os dados serializado modo parametro1=valor1&parametro2=valor2

Você pode utilizar uma biblioteca Ajax, como a Prototype. Ela lhe permite que você construa requests arbitrários e os submeta. Não deve ser difícil fazê-lo.

Falando nisso: Existe uma situação aonde o JavaScript no Internet Explorer não pode modificar o method e o action do Form. E eu precisava emular este comportamento.

Montei uma prova de conceito usando o Prototype. Não está perfeito, mas serve pra dar uma idéia de algo interessante: Criar dinamicamente um form html (copiando a partir do original) e submetê-lo:

<html>
  <head>
    <script type="text/javascript" src="prototype.js"></script>
  <script type="text/javascript">
  function serializar() {
    var formElements = Form.getElements($("formTeste"));
    
    var hiddenDiv = $("hiddendiv");
    
    hiddenDiv.update("");

    var cloneForm = new Element("form", { "method" : "post", "action" : "http://www.leal.eng.br/files/dumpform.php" });
    
    formElements.each(
      function(element) {
        var attr = { 'tagName' : element.tagName };
        
        if ("" == element.readAttribute('name'))
            return;
        
        attr['name'] = element.readAttribute('name');
        attr['value'] = element.readAttribute('value');

        switch (element.tagName.toLowerCase()) {
        case "select": {
          attr['tagName'] = 'input';
        }
        case "button":
        case "input": {
                if (element.hasAttribute('type') && "checkbox" == element.readAttribute('type').toLowerCase()) {
                    attr['type'] = 'checkbox';
                    if (!element.readAttribute('checked'))
                        return;

                    attr['checked'] = element.readAttribute('checked');
                } else {
                    attr['type'] = 'hidden';
                }
                break;
        }
        }
        
        var tagName = attr['tagName'];
        
        attr['tagName'] = null;
        
        var childElementHTML = new Element(tagName, attr);

        cloneForm.appendChild(childElementHTML);
      }
    );
    
    //cloneForm.appendChild(new Element("input", { 'type' : "submit" }));
    
    hiddenDiv.update(cloneForm);
    
    var contents = $("hiddendiv").innerHTML.escapeHTML();
    
    $("dataDiv").update(contents + "<br/>" + $("hiddendiv").innerHTML);

    cloneForm.submit();
  }
  </script>
  </head>
  <body>
  <div id="hiddendiv" style="display: none"></div>
  <form id="formTeste" method="POST" action="http://www.leal.eng.br/files/dumpform.php">
    <input type="hidden" name="A1" value="Valor A1" />
    <input type="text" name="A2" value="Valor A2" /><br/>
    <input type="checkbox" name="A3" checked="true" value="A3(1)" /><br/>
    <input type="checkbox" name="A3" value="A3(2)" /><br/>
    <input type="submit" name="Botao" value="Enviar (AJAX)" /><br/>
    <select name="select">
      <option name="A3" value="Valor A3" />A3</option>
      <option name="A4" value="Valor A4" selected>A4</option>
    </select>
  </form>
  <input id="btnSerializar" type="button" name="serializar" onclick="serializar()" value="Clonar e Submeter">
  <div id="dataDiv"></div>
  </body>
</html>

Valeu mesmo galera pela atenção.

Eu vou mandar via get mesmo como o amigo Pedrosa sugeriu.
Por enquanto fica mais facil para mim depois vou dar uma olhada em ajax.

vlw!