尝试将参数从php文件和标记传递到脚本标记

时间:2016-11-18 05:08:01

标签: javascript php

我试图在函数内传递一个参数,点击一个脚本标签,顺便说一句我不想使用全局$ result。我只想从参数中使用它。 继承我的代码:

<?php
  $results = [person1:{}] // a bunch of different people in array
  while($result in $results) //pseudo code to get each person in results
 <div>
  <input type="button" value="Submit"     onclick="changeConfirmed($result)">
 </form>';
 echo '</div>';
?>

 <script>
    function changeConfirmed(val){
    $maj=val['major'];
    alert("Your major is: " + major);
   }
 </script>

3 个答案:

答案 0 :(得分:0)

答案 1 :(得分:0)

您的PHP变量仅存在于服务器上。它们与客户端上的JavaScript变量完全分开。将值从服务器传递到客户端的唯一机制是通过网页的内容(或通过AJAX特别请求的幕后Web内容)。 顺便说一句,您可以将此数组转换为JSON,然后将此字符串传递给函数。 检查一下:

unsigned char hexs[50]

答案 2 :(得分:0)

不知道你的&#34;阵列&#34;是基于我可以从问题中收集到的,&#34;模型&#34; $ result数组可以有简单的形式......

$result = [ 'major' => 'General' ];

表单代码简化为格式......

<form>
    <input type="button" value="Submit" onclick=changeConfirmed('<?= json_encode($result); ?>')>
</form>

然后是jQuery(我只是把它打死了,以便在搜索谷歌并尝试很多东西后得到一些工作......所以它可能不是最佳方式)

<script>
    function changeConfirmed(val) {
        var obj = $.parseJSON(val);
        console.log(val);
        var major = obj.major;
        alert("Your major is: " + major);
    }
</script>

警告结果表明&#34;您的专业是General&#34;。

但我收集到你会使用一些唯一标识每个输入行的东西,就像一个数字。

如果我偏离你所追求的目标,至少我学会了另一个小技巧。 :)