发送不带JS的表单url


Send form url without JS

我有一个表单,通过JS 发送一些变量

<form id="custemail" action="mail/out.php" method="post">
    ....
    <input type="submit" value="Create & Send">
</form>

我需要在php端更改post-URl。我必须如何更改Js代码才能工作。我的意思是,我不想在JS中使用url:"mail/out.php"。或者我可以在JS端使用If else。但是vars来自php。所以我不知道如何使用它们。我有8种不同的情况。

JS代码:

$('#sending').click(function(){
            $.prompt("What is customer's email?","",
            function(value){        
                $.ajax({
                url: "mail/out.php",
                type: 'POST',
                data: $('#custemail').serialize(),
                } ).done (function(data) {
                    $.msg("Message sent to the '"+value+"'?");
              });
            },
            function(){
                $.msg("You clicked cancel!");
            });
        });

您可以使用ajaxSubmit(),这样JS就可以从表单的action属性中获取url。

你也可以用类似的东西自己拿:

var url = $("#custemail").attr("action");

上面的代码将返回表单的action属性所包含的任何内容,因此您只需要对$.ajax调用执行"url:url"即可。

我认为第二个选项要好得多,因为它不需要整个插件来完成,但包括ajaxSubmit的插件非常好,值得一看。

假设Javascript是由PHP脚本创建的,您可以执行以下操作:

$.ajax({
    url: "<?php echo $url; ?>",
    ...
});