Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/262.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用HTML按钮调用带有参数的JavaScript函数_Javascript_Php_Html_Function_Base64 - Fatal编程技术网

使用HTML按钮调用带有参数的JavaScript函数

使用HTML按钮调用带有参数的JavaScript函数,javascript,php,html,function,base64,Javascript,Php,Html,Function,Base64,我试图通过HTML按钮调用带有参数的JavaScript函数 HTML: <input id="clickMe" type="button" value="clickme" onclick="callFunc("<?php $x='Hello World'; echo $x; ?>")" /> 什么是$param,它是全局范围内定义的变量吗?如果不是,它将抛出一个错误并停止脚本的其余部分,您应该在javascript控制台中看到这一点。。您调用函数“callFunc”,

我试图通过HTML按钮调用带有参数的JavaScript函数

HTML:

<input id="clickMe" type="button" value="clickme" onclick="callFunc("<?php $x='Hello World'; echo $x; ?>")" />

什么是
$param
,它是全局范围内定义的变量吗?如果不是,它将抛出一个错误并停止脚本的其余部分,您应该在javascript控制台中看到这一点。。您调用函数“callFunc”,但它不存在…@Patrick Evans$param实际上是一个字符串类型的PHP变量。我调用callFunc()传递变量$x='some string';要转换为base-64字符串。没有实际的错误,显示什么也不做$param不是全局的。$x的值是用户在表单文本框中输入的值。
onclick=str2b64()!使用单引号而不是双引号解决了这个问题,例如onclick=“callFunc(“”)”感觉很傻,因为我认为我尝试了单引号和双引号。对不起!
/*

* Convert string to a base-64 string

*/

function str2b64(input) {

  try { b64pad } catch(e) { b64pad=''; }

    var tab = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";
    var output = "";
    var len = input.length;
    for(var i = 0; i < len; i += 3) {
        var triplet = (input.charCodeAt(i) << 16)
                | (i + 1 < len ? input.charCodeAt(i+1) << 8 : 0)
                | (i + 2 < len ? input.charCodeAt(i+2)      : 0);
        for(var j = 0; j < 4; j++) {
            if(i * 8 + j * 6 > input.length * 8) output += b64pad;
            else output += tab.charAt((triplet >>> 6*(3-j)) & 0x3F);
        }
    }
  alert(output);

}