0

ボタン用のこのコードがあります。

<table style='border:0;margin:0;padding:0;'><tr><td>";
echo "<form action='' method='POST'><input type='submit' id='ajaxwel'
class='".(getqrsitebooleans($companyqr,10002,'True') === 'True' ? 'togglebtn' :
'togglebtnon' )."' name='dotogglebool' value='".
(getqrsitebooleans($companyqr,10002,'True') === 'True' ? 'Skjul' : 'Vis' ).
"'><input type='hidden' name='mainsetup' value='1'><input type='hidden' 
name='itemid' value='10002'></form></td><td>$tmptextholder</td></tr></table>

私がやりたいのは、フォームを ajax で送信してから、ボタンのステータスを更新することです。class='".(getqrsitebooleans($companyqr,10002,'True') === 'True' ? 'togglebtn' : 'togglebtnon' )."'

しかし、現在、私はどちらかを行う方法がわかりません。ボタンには、データベースの値によって変更される 2 つの状態があります。クリックすると、データベースの値を変更する POST が送信され、サイトが再読み込みされて変更が読み取られ、変更されたステータスが緑から赤に変わります。

$.ajax を使用すると思いますが、完全にはわかりません。どんな助けでも大歓迎です.!

4

3 に答える 3

0
$.ajax(function(){
  complete: function(){
     $('#ajaxwel').prop('val','Submit'); 
  },
  beforeSend: function(){
     $('#ajaxwel').prop('val','Sending..');
  }
});
于 2013-08-08T13:16:03.857 に答える
0

のようにしてみてください。

<?php
    echo "<table style='border:0;margin:0;padding:0;'><tr><td>
    <form action='' method='POST'>
        <input type='submit' id='ajaxwel'
           class='".(getqrsitebooleans($companyqr,10002,'True') === 'True' ? 
           'togglebtn' : 'togglebtnon' )."' 
           name='dotogglebool' value='".(getqrsitebooleans($companyqr,10002,'True') === 'True' ? 'Skjul' : 'Vis' )."'>
        <input type='hidden' name='mainsetup' value='1'><input type='hidden' name='itemid' value='10002'>
    </form></td><td>".$tmptextholder."</td></tr></table>";
?>
于 2013-08-08T13:19:06.770 に答える
0

AJAX は、作成したページを呼び出します。そのページはすべての DB ping を実行します。

正しい変数を投稿してください。また、そのページでは、Javascript、JSON、XML、またはその他の解析可能なものを返し、完全な関数内で解析します。そのページ内で、すべての操作が処理されていることを確認し、データベースが必要なものを照会します。

サンプルページを掲載してもよろしいですか?サンプルコール?等?

データ: ping されているページ: http://phpfiddle.org/main/code/tt3-8j2

ajax リクエスト:

$.ajax({}
  method:"POST",
  data: {myItem: "some data"}
  url: "TESTPAGE.php",
  success: function(a,b,c){
    $("#button").val(JSON.parse(a.responseText)["out"]);
    //if something is updated you might want to disable it as well temporarily.
    $("#button").css("disabled","disabled");
  }
);

これにより、投稿されたデータを含むページに ping が送信されます。いくつかの db を実行し、return をエコーし​​ます。返されたものは、成功呼び出しに渡されます。

本当にatm、成功呼び出しの変数などのマイナーエラーをテストできません。

ボタンの値を「updated」に変更する必要があります

于 2013-08-08T13:20:41.403 に答える