0

我想通过单击链接自动填充两个输入元素。这是我正在使用的代码:

 <script>

    function autoFill(depart_from, depart_to) {
        document.getElementById('depart_from').value = depart_from;
        document.getElementById('depart_to').value = depart_to;
    }

 </script>

这是链接:

...

echo "<tr class='odd'>";
echo "<td><span class='hover'><ahref='#'onClick='autoFill(" . $row['departure'] . ", " . $row['destination'] . "return false;'>" . $row['departure'] ." » ". $row['destination'] . "</a><span></td>";
echo "</tr>";

不能让它工作!我究竟做错了什么?

谢谢!

4

3 回答 3

0

对于初学者,您的锚标记中的间距被打破:

<ahref='#'onClick='autoFill(

应该:

<a href='#' onClick='autoFill(

此外,您永远不会关闭函数并使用分号分隔语句:

autoFill(" . $row['departure'] . ", " . $row['destination'] . "return false;

应该:

autoFill(" . $row['departure'] . ", " . $row['destination'] . ");return false;

最后,您可能希望将这些方法参数用引号括起来:

autoFill(" . $row['departure'] . ", " . $row['destination'] . ");return false;

应该:

autoFill('" . $row['departure'] . "', '" . $row['destination'] . "');return false;

可能还有更多。要记住的一件事是尽量不要使用echo语句来发出大块 HTML。它使代码不太容易阅读,更重要的是,它添加了另一层“字符串化”,这使得在字符串中包含引号更加困难。

于 2011-06-11T13:27:50.997 回答
0

标签上的间距a错误,您需要在a href.

您永远不会关闭函数调用的方括号,我认为您可能需要将参数放在引号中,具体取决于它们的类型:

autoFill('" . $row['departure'] . "', '" . $row['destination'] . "'); return false;'

于 2011-06-11T13:30:14.467 回答
0

我通过查看这个问题解决了这个问题:JQuery - 单击链接自动填写输入字段

于 2011-06-13T13:30:26.923 回答