0

結果をcsvとしてエクスポートするためのcsvボタンとしてダウンロードしています。これまで、これにはサーバー側のコードを使用していました。選択した DropDowns Id を、結果を Excel に書き込んでいる csvdownload.php ページに送信していました。

しかし今、チェックボックスを使用して検索結果を選択するためのユーティリティが必要であり、選択した結果を csv に書き込む必要があります。

テーブルデータを配列で取得し、それをajaxを使用してphpに投稿することを計画しています。その後、残りのことを行います。しかし、どうすれば複数行のデータをphpに投稿できるのでしょうか。データを警告しているテーブルデータを取得するための次のコードがありますが、それを配列として作成してphpに渡す方法がわかりません

      $('#tblSearchResults tr').filter(':has(:checkbox:checked)').each(function() {
     $tr = $(this);
       //alert($tr.find("td").eq(4).html());

        var risk_cat = $tr.find("td").eq(1).html();
        var risk_type = $tr.find("td").eq(2).html();
        var risk_desc = $tr.find("td").eq(3).html();
        var treat_desc = $tr.find("td").eq(4).html();
        var treat_cat = $tr.find("td").eq(5).html();

        selectedData.push({"risk_cat": risk_cat, "risk_type": risk_type, "risk_desc": risk_desc, "treat_desc": treat_desc, "treat_cat": treat_cat});

ありがとう

4

4 に答える 4

1

JSON.stringify(selectedData)サーバーサイドで使用するには、使用する必要があると思います。

jQuery:

var obj = { 'risk_cat': risk_cat, 'risk_type': risk_type };
selectedData.push(obj);

$.post('serive.php', { DTO: JSON.stringify(selectedData) }, 
function(data){ /* handle response,  */ });

service.php:

header('Content-type: application/json');
header('Cache-Control: no-cache, must-revalidate');

$foo = json_decode($_POST['DTO']);


$arr = array('a' => 1, 'b' => 2, 'c' => 3, 'd' => 4, 'e' => 5); //example data

echo json_encode($arr);

これで始められるはずです。あなたのajax応答では、 alert(data.a)「1」を警告します

于 2012-06-04T13:02:25.147 に答える
0

jQuery シリアライズ ( http://api.jquery.com/serialize/ )を使用する必要があります。

サーバーに渡す値を持つフィールドを<form>含むページに を作成します。<input>

次に、jQuery を使用してサーバーを呼び出します。

$.ajax({
  type: 'POST',
  url: url,
  data: yourForm.serialize(),
  success: success,
  dataType: dataType
});
于 2012-06-04T13:03:53.943 に答える
0

Jquery フォームを確認してください。テーブルをフォーム要素でラップすると、Ajax でシリアル化されて投稿されます。http://jquery.malsup.com/form/

于 2012-06-04T13:05:38.613 に答える
0

これを試すことができるかもしれません:

$.ajax({
  type: 'POST',
  url: yourscript.php,
  data: JSON.stringify(selectedData),
  success: function(..){

  },
  contentType: "application/json"
});

PHP ファイルで、stdin から JSON 文字列を読み取り、使用json_decodeして JSON をデコードします。

$requestObject = json_decode(file_get_contents('php://input'));
于 2012-06-04T13:07:40.650 に答える