Javascript函数在CHROME中第一次调用时工作异常?

Javascript函数在CHROME中第一次调用时工作异常?,javascript,Javascript,大家好 下面提到的javascript代码在包括chrome在内的所有浏览器中都能正常工作(从第二次调用开始) 我在点击一个链接时调用这个函数,如下所示 <?php echo "<a href='#' onclick='javascript:call(\"$fieldvalue\");'>$fieldvalue</a>" ?> 正常行为:在所有浏览器中单击链接后,新形成的url为 url://localhost/mysite/sample.php?s

大家好

下面提到的javascript代码在包括chrome在内的所有浏览器中都能正常工作(从第二次调用开始)

我在点击一个链接时调用这个函数,如下所示

<?php  echo "<a href='#' onclick='javascript:call(\"$fieldvalue\");'>$fieldvalue</a>"  ?>

正常行为:在所有浏览器中单击链接后,新形成的url为

url://localhost/mysite/sample.php?src_q=val

奇怪的行为:当我第一次在chrome中点击链接时,变量
val
的值被url替换,其值如下

这种奇怪的行为发生在第一次点击chrome时。从同一选项卡中的第二次调用开始,变量
val
的值工作正常,我得到了所需的url

我试着用谷歌搜索,但找不到任何解释

提前感谢。

有几件事:

  • onclick的开头删除“javascript:”。您应该在
    href
    中使用它,而不是在
    onclick
    中使用它

  • 当用户单击链接时,您可能希望通过返回
    false
    来取消导航:

    onclick='callSearch2(...); return false;'
    

  • 您正在调用的函数与您发布的函数不匹配…这是正确的函数,只是一个问题错误,还是其他方式?另外:从“onclick”属性中去掉“javascript:”前缀。这是不必要的。(不过,这与您的问题无关。)此外,单引号的HTML属性invalid@kibibu:不,不是。它们在XHTML中无效。在HTML中,可以使用单引号或双引号,或者(如果属性值中只有某些字符)完全不使用引号。看说明书:@T.J.克劳德-没错。他们在HTML5中保留了这一点,这确实让我感到惊讶。我更喜欢XHTML方法。
    onclick='callSearch2(...); return false;'