【问题标题】:javascript if-else like phpjavascript if-else like php
【发布时间】:2011-08-08 18:17:21
【问题描述】:

是否可以在 JavaScript 中使用 PHP 中的 HTML 内容执行 if-else?

如果是这样,怎么做?

例子

<?php
if(1) {
?>

<h1>thought so</h1>

<?php
}
else {
?>

<h1>that's strange</h1>

<?php
}
?>

【问题讨论】:

  • 怎么样?我忘了问这个,我不是......

标签: php javascript html if-statement


【解决方案1】:

这是对 javascript 的直接翻译。但通常不是正确的方法。

<script type="text/javascript">
if(1) {
      document.write('<h1>thought so</h1>');
}
else {
      document.write('<h1>that\'s strange</h1>');
}
</script>

这里有一个更好的方法:

<div id="show-if-true" style="display: none">
    <h1>thought so</h1>
</div>
<div id="show-if-false" style="display: none">
    <h1>that's strange</h1>
</div>

<script type="text/javascript">
var ifFalse = document.getElementById('show-if-false'),
    ifTrue  = document.getElementById('show-if-true');

if(1) {
    ifTrue.style.display = "block";
}
else {
    ifFalse.style.display = "block";
}
</script>

【讨论】:

  • 没有document.write可以吗?
  • 是的。为什么需要这个?
  • 请注意@Eric 提到的通常不是正确的方法。理所当然地,恕我直言,这是一种糟糕的做法。
【解决方案2】:

除非您在 javascript / jquery 中执行 if/else 逻辑,否则不会。 HTML 是 wysiwyg。

【讨论】:

  • 这就是我的意思...在 JavaScript 中...有点像 PHP 所做的
【解决方案3】:

我想你想做:

if(something){
      //do something
      document.write('<h1>thought so</h1>'); //see comments below
}
else if(something_else) {
      //do something else
      document.write('<h1>that\'s strange</h1>'); //see comments below
}

小提琴:http://jsfiddle.net/maniator/mQytV/

【讨论】:

  • 你能做我想做的事吗,if 正文是 HTML?
  • 有转义功能吗?
  • @tekknolagi -- 逃避什么?
  • @tekknolagi 加倍 ''
  • @Tekknology -- 只需使用" 而不是' 来换行
【解决方案4】:

不,您不能在 javascript 中嵌入 html。当您在服务器上运行时,什么 php 会“打印”html,javascript 不能这样做 - 它实际上不能生成 html。这就是 DOM 接口的用途。

【讨论】:

  • 哦,对不起,我明白你的意思了。
【解决方案5】:

对不起,我看错了你。这在 javascript 中是很有可能的,但我可以建议改用 jQuery 吗? jQuery 是一个非常强大、广泛使用的 javascript 框架。

在 jQuery 中,您可以调用 DOM 元素并使用类似 .html("asdasda") 的简单语法在其中设置 HTML!当然你还有 if - else、foreach、switch 等等。

这是很有可能的,但是您可以验证的条件程度是有限的,因为您无法在 HTML 中定义变量等(在 HTML 5 之前)。

你可以参考这个链接http://msdn.microsoft.com/en-us/library/ms537512(v=vs.85).aspx

基本上它们的语法是 HTML CONTENT

HTML 内容将在真正的条件结果中隐藏的位置。

如果您有任何特定的代码可以执行此操作,请告诉我。

【讨论】:

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