PHP函数调用和Javascript代码中的数组传递


PHP function call and array passing in Javascript code

请帮忙。。

我有一个动态表单,其中元素的数量是不固定的,我需要对表单进行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数组。

您可以使用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代码。如果你坚持用内联PHP编写JavaScript代码,这有时会很棘手。

您至少应该考虑在服务器端(用PHP)进行验证,并且只将结果传递给客户端。

php代码必须生成如下结果:

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

或JavaScript中支持的其他CCD_ 1格式。。

这只是一个例子。

看看give链接:在Javascript中的Array这个链接告诉您需要使用哪种格式的Array。

数据不足以帮助您@disha。请提供更多信息并对此进行编辑。在php的第一行中,这个"="是什么?提供更多的细节,让别人能够真正帮助你。编码快乐!