我正在尝试将字符串值传递给JavaScript参数。 这是我的HTML代码
<input type="submit" value="Edit" onclick="edit(<?php echo $key; ?> );" name="<?php echo $key; ?>" >
这是我的JavaScript函数
<script type="text/javascript">
function edit(id){
window.location.href="http://localhost/koko/edit-post.php?id="+id;
}
</script>
但这对我不起作用。我是如何解决这个问题的?
答案 0 :(得分:0)
由于$key
的类型为string
,您需要用引号括起来。对参数使用引号。
onclick="edit('<?php echo $key; ?>');"
// ^ ^
更好的方式:
作为您在函数中想要的name
,您可以使用element.name
来获取它。
请参阅以下代码中突出显示的评论:
HTML:
<input type="submit" value="Edit" onclick="edit(this);" name="<?php echo $key; ?>">
<!-- ^^^^ Pass the element instance to the function -->
使用Javascript:
<script type="text/javascript">
function edit(el) {
// ^^ // Get the element instance here
window.location.href = "http://localhost/koko/edit-post.php?id=" + el.name; // Use element.name to get the `$key` value.
// ^^^^^^^
}
</script>