0

助けてください..

私はダイナミックなフォームを持っています。の要素が固定されておらず、フォームで JS 検証を実行する必要があります。現在フォームに表示されているすべての要素の配列を返す PHP 関数があります。これをJSコードで使用したい..

私は何かlyk disを試しています::

function checkValidation() {

  <?php echo  
    // php function call
    $arrColumnsInfo = $this->fetch_fields_info();
    print('<pre>');
    print_r($arrColumnsInfo);
    print('</pre>');
  ?>
}

私のために働いていません..JSエラーをスローします..またはこれ..

function checkValidation() {
  <?php=
    // php function call 
    $arrColumnsInfo = $this->fetch_fields_info();?>
    alert(<?=$arrColumnsInfo?>);
}

再び..動作していません..

私のPHP配列の出力:

Array
(
[client_code] => Client Code::1::Basic company Info::desc::TB
[entity_name] => Entity Name::1::Basic company Info::::TB
[type_of_entity] => Type of entity::1::Basic company Info::Type of entity,Sole trader,Partnership,Australian Private Company, other::DD
[fixed_fees] => fixed fees::8::Fees Related::yes,no::RD
[billing_time] => Billing time::8::Fees Related::Weekly,Fortnightly,Monthly,Yearly::DD
)

ここで使用されるキーは、フォーム要素の名前です。私は自分のフォームlyk disを構築しています..

<input type="text" name="client_code" value="">... 

など..同様に、すべてのフォーム要素が動的に作成されます。そして今、私はこのフォームを検証したいので、JavaScriptでこの配列が再び必要です.

4

3 に答える 3

1

json_encodeを使用して、PHP 配列を JavaScript で使用できる from に変換できます。

function checkValidation() {
  var data = <?php echo json_encode($this->fetch_fields_info()) ?>;
  // ... run your client-side checks
  alert(data);
}

常に有効な JavaScript コードを提供する必要があることに注意してください。その JavaScript コードをインライン PHP で書くことに固執する場合、これは非常に難しい場合があります。

少なくともサーバー側 (PHP) で検証を行い、結果のみをクライアントに渡すことを検討する必要があります。

于 2012-08-25T05:28:57.597 に答える
0

PHPコードは、次のような結果を生成する必要があります。

var arr = <?php echo $arr; // result: [1,2,3,4,5,6,7] ?>

またはarray()JavaScriptでサポートする他の形式。

これは単なる例です。

giveリンクを見てください:Javascriptの配列 このリンクは、配列を使用するために必要な形式を示しています。

于 2012-08-25T05:17:25.870 に答える
-2

@disha を支援するには、データだけでは不十分です。もう少し提供してこれを編集してください。また、phpの最初の行にあるこの「=」は何ですか? 誰かが本当にあなたを助けることができる詳細を提供してください。ハッピーコーディング!

于 2012-08-25T05:19:20.953 に答える