点击Codeigniter中的Form Submit

Onclick with Form Submit in Codeigniter

本文关键字:Submit Form 中的 Codeigniter 点击      更新时间:2024-04-25

我想做一些事情,比如,当我点击提交按钮时,即使有几个字段是空白的,也应该提交表单,但消息应该打印在页面顶部,"这些字段正在等待保存",但我想在没有验证的情况下进行优化,所以我做了这样的

echo form_submit('tax', 'Save & Continue',"class='btn-lg-blk btn-orange'",'onclick="return DisplayMessages();" ');

在这段代码中,表单可以提交,但onclick不起作用有什么建议我该如何开发?

您可以使用ajax提交表单

function DisplayMessages(){
   if(field1=="" || field2==""){
     //print your message here
     $("#element_id").text('These Fields are pending to save');
  }
  //post your form using ajax
  $.post( "http://yourdomain.com/controller/function", $("#form_id").serialize())
   .done(function( data ) {
    alert( "Data Loaded: " + data );
  });
  return false;
}

通过这种方式,您的邮件将显示在您想要的任何位置,并且您的表格将被提交。

应该是这样的:

<?php
$form_attr  =
array(
  'name'    =>  'formname',
  "id"    =>  "formid",
  'method'  =>  'post',
  'onsubmit' => 'return DisplayMessages()',
  'class'     =>  "form-horizontal",
  'role'  =>'form'
  );
echo form_open("controller/method",$form_attr);
?>

使用form_button而不是form_submit,如下所示:

<?php
    $data = array(
    'name' => 'tax',
    'id' => 'button',
    'type' => 'button',
    'content' => 'Save & Continue',
    'class'=>'btn-lg-blk btn-orange',
    'onclick'=>'return DisplayMessages(this);'    
);
echo form_button($data);
    ?>

它将创建如下元素:

<button onclick="return DisplayMessages(this);" class="btn-lg-blk btn-orange" id="button" type="button" name="tax">Save &amp; Continue</button>

并在DisplayMessages()函数上从提交离子代码编写手动java脚本:

   function DisplayMessages(element)
    {
      $(element).closest("form").submit();
    }