2011-04-14 82 views
0

后4-5小时google搜索和研究,引发了表单提交不会返回字段值到PHP预期...感谢所有帮助jquery.ui对话框,确认删除不返回值到PHP

<?php 
if (isset($_POST['xxxx'])){ 
    echo "POST DELETE <br />"; 
}else{ 
?> 
    <div id="dialog_confirm" title="Confirm Delete">Are you sure ?</div> 
    <form id='inputform' name='tablename' method='post' action='#' /> 
    <input type='text' name='xxxx' value='22' /> 
    <input type='submit' class='delete' name='delete' value='Delete' /> 
    </form> 

    <script type='text/javascript'> 
    jQuery(document).ready(function(){ 
     $('#inputform').submit(function(){ 
     $("#dialog_confirm").dialog('open'); 
      return false; 
     }); 
     $("#dialog_confirm").dialog({ 
      autoOpen:  false, 
      resizable: false, 
      height:140, 
      modal: true, 
      buttons: { 
      "Delete all items": function() { 
       $(this).dialog("close"); 
       window.inputform.submit(); 
      }, 
      Cancel:  function() { $(this).dialog("close");} 
      } 
     });    
    }); 
    </script> 

回答

1

这是因为你有返回false;这里:

$('#inputform').submit(function(){ 
     $("#dialog_confirm").dialog('open'); 
      return false; 
}); 

所以每当你尝试从表单提交数据,它永远不会。您想改为使用提交按钮上的click()。

你可以试试这个:

$('.delete').click(function(){ //Submit button clicked (or return key pressed) 
     $("#dialog_confirm").dialog('open'); 
     return false; //Don't submit the form straight away 
}); 

$("#dialog_confirm").dialog({ 
      resizable: false, 
      autoOpen: false, 
      height:140, 
      modal: true, 
      buttons: { 
       "Delete all items": function() { 
        $('#inputForm').submit(); //Now submit the form 
        $(this).dialog("close"); 
       }, 
       Cancel: function() { 
        $(this).dialog("close"); 
       } 
      } 
}); 
+0

这解决了这个问题...感谢一百万。 – John 2011-04-14 17:56:04