我是一个PHP初学者,我有一个快速的问题。是否有可能有javascript代码注入到通过php文档?
例如,假设我想在填写完表单后注入一个调用函数的按钮:
<html>
<head>
<script type = text/javascript>
function func() {
...
}
</script>
</head>
<body>
<form action = 'welcome.php' method = 'post>
Name: <input type = 'text' name = 'fname' />
<input type = 'submit' value = 'submit' />
</form>
<?php
if (isset($_POST['fname'])) {
echo '<input type = button onclick = func />'
}
?>
</body>
</html>
这个可行吗?如果不是,为什么不呢?
如果有任何帮助就太好了
将工作得很好-只是要记住关闭引号字符串:
<form action='welcome.php' method='post'> // add ' here
Name: <input type='text' name='fname' />
<input type='submit' value='submit' /> // removed a couple of spaces (not required)
</form>
<?php
if (isset($_POST['fname'])) {
echo '<input type="button" onclick="func" />'; // added some quotes and a semicolon
}
?>
我已经从type = "something"
到type="something"
的HTML中删除了属性和值之间的空格,尽管我找不到关于此的"官方"规范。看起来空格是完全有效的…我个人比较喜欢不要留白.....
尝试:
echo '<input type="button" onclick="' . $_POST['fname'] . '" />';
如果fname=doSomething
,则使用:
echo '<input type="button" onclick="' . $_POST['fname'] . '()" />';
,你渲染的HTML将是:
<input type="button" onclick="doSomething()" />
那么你只需要你的函数在某处:
<script>
function doSomething() { }
</script>
如果您当前的页面是welcome.php
并且您运行了此代码,您将按Submit按钮,页面将重新加载并拥有您的新按钮。
但是查看它是否适合你的最好方法是运行它。你为什么不先试试呢?