如何将PHP简单if语句转换为Javascript?

时间:2011-09-19 19:26:59

标签: javascript

我想在PHP中设置一个随机字段,例如1-3并为每个州做代码,但是我不知道如何使用javasccript做同样的事情。有可能,怎么做这样的事情?提前谢谢。

            <?php $random = rand(1,3); ?>

            <?php if ($random == 1) : ?> 
                <div id="myContent">
                </div>
            <?php endif; ?>

            <?php if ($random == 2) : ?> 
                <div id="myContent2">
                </div>
            <?php endif; ?>

            <?php if ($random == 3) : ?> 
                <div id="myContent3">
                </div>
            <?php endif; ?>

5 个答案:

答案 0 :(得分:1)

// generate a random number between 1 and 3 (inclusive)
var rand=Math.floor(Math.random()*3)+1

if (rand==1) {
  document.write("first content");
}

if (rand==2) {
  document.write("second content");
}

if (rand==3) {
  document.write("third content");
}

答案 1 :(得分:1)

我建议jQuery和以下组合:

<强> HTML

<div id="myContent1">
    <p>Alternative content 1</p>
</div>

<div id="myContent2">
    <p>Alternative content 2</p>
</div>

<div id="myContent3">
    <p>Alternative content 3</p>
</div>

<强> CSS

#myContent1, #myContent2, #myContent3 {
    display: none;
}

<强> JS

1)添加jQuery

2)

<script type="text/javascript">
    function randint(min, max) {
        var res;
        do {
           res = Math.floor(Math.random() * (max - min + 1)) + min;
        } while (res > max);
        return res;
    }
    var rnd = randint(1, 3);
    $('#myContent' + rnd).show();
</script>

示例小提琴:http://jsfiddle.net/uXfcx/ 。按Ctrl + Enter运行/重新运行

答案 2 :(得分:1)

一些jQuery的简单回答

$(document).ready(function(){
    switch(Math.floor(Math.random()*3)+1){
         case 1: $('body').append('<div id="myContent1">Content 1</div>'); break;
         case 2: $('body').append('<div id="myContent2">Content 2</div>'); break;   
         case 3: $('body').append('<div id="myContent3">Content 3</div>'); break;
    }
 });

答案 3 :(得分:1)

var num = Math.floor(Math.random()*3) + 1;
switch(num) {
    case 1: // refactor me
        var div = document.createElement("div");
        div.setAttribute("id", "myContent" + num);
        document.body.appendChild(div);
        break;
    // etc
}

非常简单的东西,没有jQuery: - )

答案 4 :(得分:0)

一种解决方案是创建一个类似的函数:

function showRandomContent() {
    var randomNo=Math.floor(Math.random()*3)+1; //generates random number between 1 and 3

    switch (randomNo) {
        case 1:
            document.getElementById("MyContent").innerHTML = Content1;
            break;
        case 2:
            document.getElementById("MyContent").innerHTML = Content2;
            break;
        case 3:
            document.getElementById("MyContent").innerHTML = Content3;
            break;
    }
}

现在你要做的就是在你的HTML中包含一个id为MyContent的div

<div id="MyContent"></div>

上面的函数showRandomContent()将包含基于随机数的内容。