javascript - 从 Ajax 加载页面提交 Ajax 表单

标签 javascript jquery ajax forms

我有一个在ajax内生成的页面。

该页面上有 2 个表单,#form1 和 #form2。

我有jquery提交表单的代码如下:

jQuery("#form1").on('submit', function(e){

        e.preventDefault();

        var sendurl = '/xxx/xxx/xxx/xxx.php';

        var varable1 = jQuery('#infor1').val();
        var varable2 = jQuery('#infor2').val();
        var varable3 = jQuery('#infor3').val();
        var varable4 = jQuery('#infor4').val();
        var varable5 = jQuery('#infor5').val();
        var varable6 = jQuery('#infor6').val();
        var varable7 = jQuery('#infor7').val();

        jQuery.ajax({url: sendurl + '?varable1=varable1' + 'varable2=' + varable2 + 'varable3=' + varable3 + 'varable4=' + varable4 + 'varable5=' + varable5 + 'varable6=' + varable6 + 'varable7=' + varable7}).done(function(data) {

            if(data === 'fail'){
                jQuery('.error').html('Something went wrong with your form request please try again!').slideDown(500).delay(4000).slideUp(500);
                jQuery('input[type=submit]', jQuery("#submittions")).removeAttr('disabled');
                return false;
            }

            if(data !== 'fail'){
                jQuery('#showresults').slideUp(600);
                jQuery('.show-complete-detail').html(data);
                jQuery('#applicationcomplete').delay(1500).slideDown(400);
            }

        }); 
});

我也尝试过:

jQuery().submit();

这也不起作用。

我假设因为页面是使用ajax加载的,所以它找不到id为form1的表单?

有人对我哪里出错有任何想法吗?

谢谢:)

最佳答案

对于动态加载的内容,请使用事件委托(delegate),如下所示:

// replacing document with top level parent
// something like parent container
jQuery(document).on('submit','#form1', function(e){ ... }

还有一件事,像这样从 ajax url 传递数据是个坏主意,您应该使用数据属性来发送数据,请参见下面的示例:

$.ajax({
     type : 'POST', // or GET
     url : 'your url here',
     data : {
        var1 : variable1
         .......
     },
    .... Another properties...
 }).done(data){...});

关于javascript - 从 Ajax 加载页面提交 Ajax 表单,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32743748/

相关文章:

变量的 JavaScript 属性

javascript - 使用 --access public 发布到 npm 不起作用?

javascript - 我应该为我的整个网站准备一个大的 Angular 文件吗?

javascript - 输入更改时按钮自动启用/禁用

javascript - 更改 :before css selector using JQuery 的宽度属性

java - Java 中文件下载的文件夹浏览对话框

jquery - 删除记录/数据后如何重新加载数据表?

javascript - 创建弹出浏览器小部件

javascript - 带有 jquery 的 HTML slider 显示第一张幻灯片的时间太长

c# - Azure 中的 PRM_ServerError,在模拟器中正确运行