【问题标题】:php variable pass to java script and alert itphp 变量传递给 javascript 并提醒它
【发布时间】:2016-10-05 10:30:16
【问题描述】:

index.php

<?php
$loginmessage = "this is message";
?>

    $(document).ready(function(){
        $("#sb-btn").click(function() {
          alert("<?=$loginmessage?>");
          return false;
        });

    });

我有一个我想要的按钮,当单击该按钮时,它会通过 java 脚本向 $loginmessage 发出警报,但是当我单击它时注意到它发生并且也没有错误。我必须做些什么才能使 php 变量传递给 javascript 并在用户单击时提醒它。

【问题讨论】:

  • 控制台有错误吗?
  • 这段代码是否在脚本标签中?
  • php 没问题。我会说这是一个错误控制台问题作为猜测..
  • @shubam 已经告诉了答案,您也可以查看here
  • 你有 id 为 sb_btn 的按钮吗?你能告诉我们你的 HTML 吗?

标签: php jquery


【解决方案1】:

不要忘记调用 jquery 库。然后试试这个-

<?php
$loginmessage = "this is message";
?>

    <script>
        $(document).ready(function(){
            $("#sb-btn").on("click", function() {
            var getvalue = '<?php echo $loginmessage; ?>';
            alert(getvalue);
          });
         });

    </script>

【讨论】:

  • 注意到也发生了,我也确实调用了 jquery。
  • 替换警报(getvalue);带警报(“你好”);并检查 jquery 是否正常工作。
  • 简单的尝试:&lt;script&gt;alert("&lt;?=$loginmessage?&gt;");&lt;/script&gt;,而不是你可以检查是否包含 jquery。 @babayaga
  • @devpro 短标签不保证开启,最好建议&lt;script&gt;alert("&lt;?php echo $loginmessage?&gt;");&lt;/script&gt;
  • @shubham715: 你的答案的第一行很重要:)
【解决方案2】:

根据您的 PHP 版本和主机,可以禁用短标签。它们最近重新与 PHP7 一起使用,PHP7 仍处于候选发布状态。
这意味着您可能必须将短标签替换为完整的 &lt;?php echo 使用。在客户端查看生成的 HTML 代码,看看是否是这种情况。

我想挑剔的一件小事是您的术语。 :P
您实际上并没有将变量从 PHP 传递给 JavaScript,就像您使用 PHP 生成所述 JS 的一部分一样。这可能看起来微不足道,但差异是至关重要的。传递变量意味着在同一个程序中处理某些事情,这里根本不是这种情况。 PHP 代码在服务器端执行,生成纯文本输出到客户端。客户端(网络浏览器)依次解析所说的内容,并找出该文本的不同部分实际上是什么类型的内容。

在开发 Web 应用程序/网站时牢记这种清晰的心理分离将使您更容易理解事物工作的细节,进而使您更容易提出简洁明了的解决方案按预期工作。 :)

【讨论】:

    【解决方案3】:

    尝试在控制台中写入。也许您的浏览器会阻止警报消息。并且-> 您是否在控制台中看到 JavaScript 错误?

    <script>
        $(document).ready(function(){
            $("#sb-btn").on("click", function() {
            var getvalue = '<?php echo $loginmessage; ?>';
            console.log(getvalue);
          });
         });
    
    </script>
    

    【讨论】:

      【解决方案4】:

      创建一个在单击按钮时调用的函数。将要提醒的消息传递给该函数。希望这可以帮助。查看 sn-p 中的代码。

      function alertSomething(test){
        alert(test);
      }
      &lt;button name="samplebtn" onclick="alertSomething('test alert')"&gt;Test Alert&lt;/button&gt;

      【讨论】:

      • 比你需要这个https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js?
      • 你不需要包含 jquery,因为没有使用 jquery 语法。但如果你想在该函数中使用 jquery 做任何其他事情,它会更准确。
      猜你喜欢
      • 2013-10-11
      • 2011-08-31
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-11-01
      • 1970-01-01
      相关资源
      最近更新 更多