从php if语句运行JavaScript函数

时间:2017-08-21 14:51:18

标签: javascript php jquery

我想创建一个php IF语句,如果它通过POST收到key "test",则应输出<h2> hello </ h2>,否则<span> error </ span> 我该怎么做?

<div id="rre">
  <h2 class="desktop">Hamburg,a major port city in northern Germany.</h2>
  <h2 class="mobil">Berlin,is the capital and the largest city of Germany.</h2>
</div>
<form action="viereck.html" method="POST">
    <input type="text" name="check"?>
    <input type="button" value="Klick"  onclick="klick();" />
    </form>

     <script type="text/javascript">
           function klick() {  
           jQuery('#rre').html('<h1>Hallo</h1>');         
          }           
       </script>

3 个答案:

答案 0 :(得分:0)

您返回的响应需要位于以下脚本标记内:

echo '<script type="text/javascript">alert();</script>';

答案 1 :(得分:0)

为什么你不用jquery这样做:尝试像这样的smth

<div id="rre">
    <h2 class="desktop">Hamburg,a major port city in northern Germany.</h2>
    <h2 class="mobil">Berlin,is the capital and the largest city of Germany.</h2>
</div>
<form action="viereck.html" method="POST">
    <input type="text" name="check"? id="text">
    <input type="button" value="Klick"  onclick="klick();" />
</form>

<强> HTML

[Desktop Entry]
Name=Eclipse 
Type=Application
Exec=/opt/eclipse/eclipse
Terminal=false
Icon=/opt/eclipse/icon.xpm
Comment=Integrated Development Environment
NoDisplay=false
Categories=Development;IDE
Name[en]=eclipse.desktop

JSFIDDLE

答案 2 :(得分:0)

如果您要发布的页面为viereck.html,则您将无法在其上使用PHP。

如果您可以将文件更改为viereck.php,则可以POSTaction="viereck.php" method="POST"添加<?php if(isset($_POST['check'])){ $check = '<span>error</span>'; if($_POST['check'] == 'test'){ $check = '<h1>Hallo</h1>'; } } ?> ,然后在页面顶部检查PHP中的POST值如:

<script type="text/javascript">
   function klick() {  
       jQuery('#rre').html(<?= $check; ?>);         
   }           
</script>

如果您的jQuery在同一页面上,您可以插入PHP,如:

AJAX

这样做可能会导致一些严重头痛,因为您的项目增长,我不推荐它。为什么不考虑使用// On form submit $.ajax({ url: "viereck.php", type: 'POST', success: function(result){ var msg = $('<h1>').text('Hallo'); $('#rre').html(msg); }, error: function(result){ var msg = $('<span>').text('Error'); $('#rre').html(msg); } }); ?您可以提交表单并返回指示成功或失败的消息,以及原因。然后,您可以使用jQuery而不是PHP字符串创建HTML:

def batch_norm(input, phase):
    return tf.layers.batch_normalization(input, training=phase)