0

これは私のhtmlコードです

 <td class="saltr" style=" border-color:#000; cursor:pointer;" id="<?php echo $grade["DEALID"];?>" onclick="dealid(this.id)" ><?php echo $grade["DEALINGS"];?></td>

on onclick()javascrip と書かれています。

function dealid(psid)
{
    var serow = psid;
    //alert (serow)
    $.ajax({url:"../views/printdeal.php?proc=dealing",data:"dealdatres="+serow,success:
    function(z)
            { 
              //alert("hiiiii")
                alert(z);
                //window.location="printdeal.php";
            }
        });

}

そしてprintdeal.phpページでは、コードは次のように書かれています

if($_REQUEST["proc"]=='dealing')
    {   

     $dealdatres1=$_REQUEST["dealdatres"];
    include_once("../classes/dbqrs.php");
    $obj=new qrys();
    $qremp="select deals.PROSPECS ,deals.DEALINGS,deals.BUYER,deals.BENEFICIARY,deals.GUIDE,deals.REMARKS ,deals.DATES,salescal.DEALID from salescal left join deals on deals.ID=salescal.DEALID where salescal.DEALID='$dealdatres1'";

$empr=$obj->exeqry($qremp);
$empres=mysqli_fetch_array($empr);
?>

しかし、このコードを実行してクリックすると、未定義の「proc」として通知が表示されます。

これを解決するのを手伝ってください。

4

4 に答える 4

0

通常のグローバルスコープの外に関数を配置したようです。あなたの構造を知らない限り、何を変更すればよいかわかりません。

最初に、すべての関数のコンテンツを onclick に移動します。

onclick='$.ajax({url:"../views/printdeal.php?proc=dealing",data:"dealdatres="+this.id,success:
    function(z)
            { 
              //alert("hiiiii")
                alert(z);
                //window.location="printdeal.php";
            }
        });'

名前/配置のみに問題があるという証拠を取得します。

PS BTWは、「onclick」の使用法に代わる強力で便利な方法として、addEventListener/attachEventについて読んでいます。

于 2013-10-25T06:53:36.643 に答える
0

関数を取得する方法はいくつかありますが、そのうちの 1 つを次のようにします。

ビューページにコードを書くことができます:

 $.ajax({
                url: "<?php echo url('/soc/cnews/savetop') ?>",
                type: 'post',
                data: "sets=" + $("#top10").val(),
                sync: false,
                dataType: 'json',
                success: function(data) {
                    if (data.status == 'success') {
                        window.location.reload();
                    } else {
                        alert(data.msg);
                    }
                }
            });

データを取得するコードをページに書き込みます。

if($success){
                        echo "{status:'success',msg:'victory'}";
                    }else{
                        echo "{status:'failur',msg:'I am sorry to failure :('}";
                    }

繰り返しますが、ajax 経由でデータを取得する場合は、必ずデータ ページにメッセージを出力またはエコーしてください。

于 2013-10-25T06:54:32.160 に答える
0

これを試して

$.ajax({type: "POST",url: "../views/printdeal.php",data: { proc:"dealing",dealdatres=serow }});

于 2013-10-25T06:57:46.010 に答える
0

PHPで問題が発生した場合は、グローバル変数の値を次のように確認できると思います

<pre>
  <?php
  var_dump($_REQUEST);
  ?>
</pre>

結果はこのようになります

array(2) {
  ["asd"]=>
  string(3) "qwe"
  ["zxcv"]=>
  string(5) "lkjsf"
}

その結果は、私のローカルホストからの URL localhost/a.php?asd=qwe&zxcv=lkjsf からのものです

于 2013-10-25T07:07:55.373 に答える