在使用javascript提交确认弹出框之前的codeigniter

时间:2014-07-15 10:49:47

标签: javascript php jquery codeigniter

我需要点击按钮提交视图弹出框进行确认,如果按下确定,它将继续提交,如果取消则不会发生任何事情并关闭框

这是我的代码,

视图表单中的代码

<?php
    foreach($company_data as $row){
?>
    <h2>Company Details.</h2>

    <?php echo form_open_multipart('site/update');?>
    <?php form_hidden('id', $row->code);?>
    <label>Code : </label> <?php echo form_input('code',$row->code);?><br/><br/>
    <label>Name : </label> <?php echo form_input('name',$row->name);?><br/><br/>
    <label>Logo : </label><input type="file" name="userfile"/><br/><br/>
    <label>URL : </label> <?php echo form_input('url',$row->url);?><br/><br/>
    <label>Description : </label> <textarea name="description" rows="4" cols="50"><?php echo $row->description; ?></textarea><br/><br/>
    <input type="submit" name="submit" value="Update" onclick="update(<?php echo $row->name;?>)"/>
    </form>

    <?php } ?>

5 个答案:

答案 0 :(得分:1)

您可以在更新功能中添加confirm()对话框,如下所示:

function update(args){
   if(confirm('Do you want to submit?')){
      // put all the js code here.
   }else{
      return false;
   }
}

因此,每当您调用更新功能时,如果用户单击“确定”,则会显示一个确认框,要求用户提交表单,然后提交其他表单将无法提交。

答案 1 :(得分:0)

在onclick函数中调用javascript函数并使用java脚本创建确认框并检查确认框中的返回值是否为true然后使用javascript onsubmit函数提交表单

答案 2 :(得分:0)

这是答案

        <form action="<?php echo site_url('site/update'); ?>" name="myForm"  onsubmit="return(validate());">  
    <?php// echo form_open_multipart('site/update');?>
    <?php form_hidden('id', $row->code);?>
    <label>Code : </label> <?php echo form_input('code',$row->code);?><br/><br/>
    <label>Name : </label> <?php echo form_input('name',$row->name);?><br/><br/>
    <label>Logo : </label><input type="file" name="userfile"/><br/><br/>
    <label>URL : </label> <?php echo form_input('url',$row->url);?><br/><br/>
    <label>Description : </label> <textarea name="description" rows="4" cols="50"><?php echo $row->description; ?></textarea><br/><br/>
    <input type="submit" value="Update"/>
    </form>

    <?php } ?>

<script type="text/javascript">
function validate()
{
     var r=confirm("Do you want to update this?")
    if (r==true)
      return true;
    else
      return false;
}
</script>

答案 3 :(得分:0)

首先,这是经典的jQuery方法。

$(document).ready(function(){
    $( 'form#yourFormId' ).submit( function(){
        if( confirm('Really submit this form?') ){
            return TRUE;
        } else {
            return FALSE;
        }
    })
})

但是,您的代码似乎没有直接提交表单,因此这可能不适用于您编写的代码。

您尚未提供onClick属性中指定的update()方法的代码,但您应该可以在其顶部添加确认代码,如下所示:

function update(name){
    if( !confirm('Really submit this form?') ){
        return FALSE;
    }

    // ....the rest of your code...

}

答案 4 :(得分:0)

您可以使用以下一行

<?php
    foreach($company_data as $row){
?>
    <h2>Company Details.</h2>

    <?php echo form_open_multipart('site/update');?>
    <?php form_hidden('id', $row->code);?>
    <label>Code : </label> <?php echo form_input('code',$row->code);?><br/><br/>
    <label>Name : </label> <?php echo form_input('name',$row->name);?><br/><br/>
    <label>Logo : </label><input type="file" name="userfile"/><br/><br/>
    <label>URL : </label> <?php echo form_input('url',$row->url);?><br/><br/>
    <label>Description : </label> <textarea name="description" rows="4" cols="50"><?php echo $row->description; ?></textarea><br/><br/>
    <input type="submit" name="submit" value="Update" onclick="return confirm(<?= $row->name ?>);"/>
    </form>

    <?php } ?>