【问题标题】:execute php statement if javascript condition is true [duplicate]如果javascript条件为真,则执行php语句[重复]
【发布时间】:2023-03-12 19:25:01
【问题描述】:

如果我的 javascript 条件为真,我正在尝试执行 php 语句,所以我编写了这个小代码:

<input id="checkbox1" type="checkbox"> MSI<br></input>

<script>
$(document).ready(function(){
    $('input[type="checkbox"]').click(function(){
          if ($('#checkbox1').is(':checked')) <?php echo "Bonjour le monde";?>;

	});
});
</script>

但这不起作用,如果有人可以帮助我,那就太好了。

【问题讨论】:

  • PHP 在服务器端运行,因此它将在 html/js 被浏览器服务器(并解析)之前运行。如果你想有条件地在 JS 中运行一些 PHP,你需要向服务器端脚本发送一个 ajax 请求,该脚本可能有条件地返回一些数据。
  • @JimL 以及如何向服务器请求 ajax,因为我现在真的不这样做

标签: javascript php if-statement conditional-statements execute


【解决方案1】:

由于在页面发送到浏览器之前在服务器上评估 PHP,您应该向服务器发送一个新请求并返回一个带有响应的新页面。所以您应该尝试这样的事情。

$('input[type="checkbox"]').click(function(){
     var checked = $('#checkbox1').is(':checked')
     $.ajax({
         type: 'GET',
         url: '/path/page.php',
         data: 'answer=' + answer,
         success: function(response) {
             if(response)
                 <?php echo "Bonjour le monde";?>;
         }
     });

});

【讨论】:

    【解决方案2】:

    使用 onChange 和一个函数

    <input id="checkbox1" type="checkbox" onChange='myFunction()'> MSI<br></input>
    

    <script>
    function myFunction() {
    $(document).ready(function(){
        $('input[type="checkbox"]').click(function(){
              if ($('#checkbox1').is(':checked')) <?php echo "Bonjour le monde";?>;
    
    	});
    });
    }
    </script>
    '

    希望这会奏效

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-05-16
      • 1970-01-01
      • 2015-08-20
      • 1970-01-01
      • 2021-11-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多