Jquery codeigniter ajax表单提交

Jquery codeigniter ajax表单提交,jquery,ajax,codeigniter,form-submit,preventdefault,Jquery,Ajax,Codeigniter,Form Submit,Preventdefault,我有一个表单(通过codeigniter制作),我想用ajax onClick提交。表单提交时没有Ajax,不允许我执行event.preventDefault() jQuery文件 $('#register_submit').click(function(e){// e.preventDefault(); var first_name = $('#register_form1').val(); $.ajax({ type: "POST",

我有一个表单(通过codeigniter制作),我想用ajax onClick提交。表单提交时没有Ajax,不允许我执行
event.preventDefault()

jQuery文件

$('#register_submit').click(function(e){//
   e.preventDefault();
    var first_name = $('#register_form1').val();


    $.ajax({
        type: "POST", 
        async: false, 
        url: base_url+"register/registration_val",   
        data: "register_first_name="+first_name,
        success: function(data){
            $('#inferiz').html(data);
        },
        error: function(){alert('error');}
    }); 

});
//控制器工作正常。名称寄存器,我发布到的函数是注册值

HTML文件

 <form method="POST" action='<?php echo site_url('/register/registration_val'); ?>' id='register_form' >
   <input type="login" name="register_first_name" id="register_form1">
   <input type='submit' value="Register" id='register_submit'>
 </form>

提交
事件而不是
点击
试试运气:

$('form').submit(function(e){//
   e.preventDefault();
    var first_name = $('#register_form1').val();


    $.ajax({
        type: "POST", 
        async: false, 
        url: base_url+"register/registration_val",   
        data: "register_first_name="+first_name,
        success: function(data){
            $('#inferiz').html(data);
        },
        error: function(){alert('error');}
    });     
});
如果发件人具有
id
'form'
替换为
'{formId}'

注意事项:

  • 代码应该位于DOM就绪事件回调中
  • 如果DOM ready上不存在该表单,则应使用委托事件
像这样:

$('body').on('submit', 'form', function(e){
   e.preventDefault();
    var first_name = $('#register_form1').val();    

    $.ajax({
        type: "POST", 
        async: false, 
        url: base_url+"register/registration_val",   
        data: "register_first_name="+first_name,
        success: function(data){
            $('#inferiz').html(data);
        },
        error: function(){alert('error');}
    });     
});
只需将
主体
替换为更接近的静态元素(如果有)即可提高性能


祝你好运

如果您输入
返回false单击事件结束时,它不应将表单提交给控制器。

表单是否存在于DOM ready上?您是否将代码放入了
DOM就绪事件中
?您的控制台没有抛出任何错误?如果这不是页面上唯一的jquery,那么可能是其他脚本被破坏,只是停止了该脚本的运行。是的,我有
document.ready(function(){})。js文件上的所有东西都可以工作,除了('submit'工作了,谢谢!顺便说一句,为什么你认为它不能只使用$(form)。当我有document.ready时提交(function(){})?或者这不是同一件事,我被信任了?@SemurNabiev。我会给你一份阅读作业,如果不清楚,请再次询问,我会尽力帮助你。阅读直接和授权事件一段。祝你好运!