Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/294.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/394.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
Php printf函数将变量传递给javascript 函数集(n){ 警报(n); document.forms[0]。提交(); } $a='A0001'; printf(“”,$a);_Php_Javascript - Fatal编程技术网

Php printf函数将变量传递给javascript 函数集(n){ 警报(n); document.forms[0]。提交(); } $a='A0001'; printf(“”,$a);

Php printf函数将变量传递给javascript 函数集(n){ 警报(n); document.forms[0]。提交(); } $a='A0001'; printf(“”,$a);,php,javascript,Php,Javascript,%g表示数字,您的数据中包含数字,但也包含字母,因此需要字符串。改用%s 然后PHP将输出: <script language="JavaScript" type="text/javascript"> function set(n) { alert(n); document.forms[0].submit(); } </script> $a='A0001'; printf('<i

%g
表示数字,您的数据中包含数字,但也包含字母,因此需要字符串。改用
%s

然后PHP将输出:

 <script language="JavaScript" type="text/javascript">
      function set(n) {

         alert(n);
        document.forms[0].submit();    
      }
    </script>


 $a='A0001';

 printf('<input type="button" value="Delete" onclick="set(%g);"/>', $a);

您需要使用
%s
,因为变量包含数字和字母数字字符

请遵循以下代码:

printf('<input type="button" value="Delete" onclick="set(%s);"/>', htmlspecialchars(json_encode($a)));

函数集(n){
警报(n);
document.forms[0]。提交();
}

我想获得$a值…但值显示为0…有人可以帮助我修复此错误?或者,只需在set()-set(“A0001”)@Ashley内添加引号-作为此特定输入数据集的手动解决方案,这将起作用(尽管它仍然需要转换为
,因为它位于由
分隔的HTML属性值内)
字符)。如果可能的话,我更喜欢更健壮、通用的解决方案。非常感谢你,我已经修复了它。非常感谢你,我修复了它,很高兴知道它工作正常,你可以将我的答案标记为已接受:-)
printf('<input type="button" value="Delete" onclick="set(%s);"/>', htmlspecialchars(json_encode($a)));
<script language="JavaScript" type="text/javascript">
  function set(n) {
     alert(n);
    document.forms[0].submit();    
  }
</script>

<?php
$a='A0001';
printf('<input type="button" value="Delete" onclick="set(\'%s\');"/>', $a);
?>