提交带有动态表单ID的bootstrap表单

时间:2013-09-12 16:10:35

标签: php jquery twitter-bootstrap dynamic modal-dialog

我正在列出用户的记录以及编辑链接,点击编辑链接bootstrap模态表单加载

我的页面有以下代码(不确定是否有更好的方法可以动态创建模态)

用户提交模态表单后更改后,模态将消失,更新消息将显示在users.php页面上

但我的提醒框显示每个模态提交按钮的相同表单ID我点击(即第一个模态的表单ID)并显示空白数据字符串(表格顺序)

我想将相应表单的数据传递给process.php

下面的

是我的users.php

的一部分
<?php whlie($row=mysql_fetch_array($result)){?>
<div id="editkey" class="modal hide fade" style="display: none; ">
   <div class="modal-header">
      <a class="close" data-dismiss="modal">X</a>
      <h3>Edit users Details</h3>
   </div>
<div>
<form id="keyfrm<?=$row['id'];?>">
   <fieldset>
   <input type="hidden" name="keyid" value="<?=$row['id'];?>">
     <div class="modal-body">
        <ul class="nav nav-list">
        <li class="nav-header text-left"><p>Name :</p></li>
        <li class="nav-header text-left"><p><input type="text" name="name"></p></li>
        </ul> 
    </div>
  <fieldset>
</form>
</div>
<div class="modal-footer">
    <button class="btn btn-success" id="submit">submit</button>
    <a href="#" class="btn" data-dismiss="modal">Close</a>
</div>

我有包含

的js文件
$(document).ready(function(){
 $('#submit').click(function() {
   var formID = $('form').attr('id');
   alert(formID);
   var datastring = $(this).closest('form').serialize();  // may be working
   alert(datastring);
    $.ajax({
    type: 'POST',
    url: 'update_user.php',
    data: datastring ,
    success: function(msg) {
        alert(msg);
            var data=msg.split('|');
            $(data[0]).modal('hide');
            $('#result').html('');
            $('#result').fadeOut("slow");
            if(data[1]==='Success'){
                $('#result').css('background-color','#DDF9B3');
                $('#result').text("Data is updating...please wait for changes to take effect");
                window.setTimeout(function(){location.reload()},3000)
            }else{
                $('#result').css('background-color','#FE9898');
                $('#result').text("Error Occured");}
            //$('#result').html(msg);
            $('#result').fadeIn("slow");
            $("#result").delay(4200).fadeOut(800);
        }
    });

    event.preventDefault();
  });
});

任何帮助将不胜感激

1 个答案:

答案 0 :(得分:0)

以获得数据的方式获取formID:

var formID = $(this).closest('form').attr('id');
   alert(formID);
   var datastring = $(this).closest('form').serialize();