我是PHP的初学者,我有一个简单的问题。是否可以通过php将javscript代码注入文档?
例如,假设我想在填写表单后注入一个调用函数的按钮:
<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>
这会有用吗?如果没有,为什么不呢?
任何帮助都会很棒
答案 0 :(得分:1)
工作正常 - 只需记得关闭你引用的字符串:
<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
}
?>
我删除了HTML中的属性和值之间的空格type = "something"
到type="something"
,尽管我找不到关于此的“官方”规范。似乎空间完全有效......我认为我个人喜欢那里没有空白......
答案 1 :(得分:0)
尝试:
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>
答案 2 :(得分:0)
如果您当前的页面为welcome.php
并且您运行了此代码,则可以按提交按钮,该页面将重新加载并显示新按钮。
但是,查看这是否适合您的最佳方法是运行它。你为什么不先尝试?