<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);
问问题
348 次
2 回答
2
%g
是数字,你的数据包含一个数字,但也有字母,所以你需要一个字符串。改为使用%s
。
然后PHP会输出:
<input type="button" value="Delete" onclick="set(A0001);"/>
你没有调用变量A0001
,所以你正在传递undefined
。
大概你想把值作为一个字符串,所以它需要被引用。该json_encode
函数会将数据结构转换为适合传递给 JavaScript 的数据结构。该htmlspecialchars
函数将制作一些适合放置在 HTML 属性值中的文本。
printf('<input type="button" value="Delete" onclick="set(%s);"/>', htmlspecialchars(json_encode($a)));
于 2013-04-07T09:33:56.843 回答
0
您需要使用%s
包含数字和字母数字字符的变量。
遵循以下代码:
<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);
?>
这是一个测试版本。
于 2013-04-07T09:40:35.140 回答