簡體   English   中英

帶提交按鈕的Onclick無法正常工作

[英]Onclick with submit button not working properly

我想點擊“提交”按鈕。 我在許多教程網站上搜索了所有提示,但所有提示都無法解決問題。 當我在調用的函數中放置警報時,警報正在運行,但是page-join.php內部的任務無法運行。 當我在onclick上使用圖像時效果很好。 請指導什么問題,由於表單的替換,我在Firebug控制台中沒有遇到問題。 所以我沒有真正的問題是什么。

//This is my function that i am calling from onclick.

  function deltpopdtl()
   {
  var ipss = '<?php echo $baseUrl ;?>/themes/gr-mist/includes/';

  $.ajax({
  url: ipss+"page-join.php?delpopdtl=<?php echo $_GET['pageid'];?>",
  success: function(data){
     }
  });}


// This is my php code(page-join.php)
     if(isset($_GET['delpopdtl'])) 
                {
       global $db;
       $getdetail = "DELETE  FROM firstloadpop WHERE rsc_id=".$_GET['delpopdtl']." and user_id= $user_id";

            mysql_query($getdetail);
             }
//This is my form and submit button
<form method="post" id="" enctype="multipart/form-data" action="#"> 

<input type="submit" id="abc" name="onladinvite" value="sendinvitation" onclick="return deltpopdtl();" />
 //i put only onlick deltpopdtl(); but the same situation, i also tired
 //onclick="return deltpopdtl();return false" but all vain

</form>

你可以這樣寫

function deltpopdtl()
   {
  var ipss = '<?php echo $baseUrl ;?>/themes/gr-mist/includes/';

  $.ajax({
  url: ipss+"page-join.php?delpopdtl=<?php echo $_GET['pageid'];?>",
  success: function(data){
     }
  });

   return false;
}

您可以在函數主體的末尾添加return false ,這樣就不必提交表單,也可以使用firebug進行調試

事實是,當您提交表單時,代碼將執行,而這樣做會中斷並重新加載頁面。 為了防止這種情況,您可以使用event.preventDefault(); 以防止提交按鈕的默認性質。

function deltpopdtl(event){
  event.preventDefault();
  var ipss = '<?php echo $baseUrl ;?>/themes/gr-mist/includes/';

  $.ajax({
     url: ipss+"page-join.php?delpopdtl=<?php echo $_GET['pageid'];?>",
     success: function(data){
     }
  });
}

//your html button
<input type="submit" id="abc" name="onladinvite" value="sendinvitation" onclick="deltpopdtl(event);" />
  1. 您必須在函數結束之前編寫return false ,因為您的表單已提交並且看不到ajax的效果。

  2. 您可以將submit按鈕更改為type='button'

function deltpopdtl()
{
  var ipss = '<?php echo $baseUrl ;?>/themes/gr-mist/includes/';    
  $.ajax({
         url: ipss+"page-join.php?delpopdtl=<?php echo $_GET['pageid'];?>",
         success: function(data){}
  });
  return false;  //You have to add this line because your form is submitted and you cant see your ajax effec
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM