为什么'var ehy =“php echo $ dunno”'?

时间:2013-10-04 16:04:54

标签: javascript php ajax explode

我希望通过使用此js代码获得textarea的一些关键字。显然,我也需要PHP代码,但我对字符串有问题 - var ehy = "php echo $dunno"。为什么这个?谁能帮我?

<?php
if (isset($_POST['line'])) {
$line = $_POST['line'];
$dunno = (explode(" ", $line));
}
?>
<script>
function countLines(){
    var stringLength = document.getElementById("myText").value.length;
    var count = Math.ceil( stringLength / document.getElementById("myText").cols ); 
    // just devide the absolute string length by the amount of horizontal place and ceil it
    return count;
    }
function what(){
    var n = countLines()
    var tarea = document.getElementById('myText')
    var lines = tarea.value.split("\n")
    //for(var x = 0; x < lines.length; x++) {
        $.ajax({
            type: "POST",
            url: "",
            data: "line="+lines,
            success: function(){
                var ehy = "<?php echo $dunno; ?>"
                $('#what').text(ehy)
                },
            });
        //} 
}
</script>

</head>

<body>
    <h1>SearchFunction()</h1>
    <textarea rows="10" cols="70" id="myText"><?php echo "what the hell?";?></textarea>
    <input type="button" onclick="what()"/>
    <p id="try"></p>
    <p id="what"></p>

</body>
</html>

1 个答案:

答案 0 :(得分:0)

你所拥有的是一些类似HTML的页面,其中包含少量的PHP。

<html>
<?php echo 'hi' ?>
</html>

在您的服务器上,处理完PHP并替换所有标记:

<html>
hi
</html>

在您的特定情况下,您回显$dunno的地方位于某些嵌入式JavaScript中间。

所有这些都发生在服务器上。客户端(浏览器)到目前为止没有做任何事情。

现在页面已准备就绪,它会进入解释它的浏览器。浏览器没有得到这些位,因为它们已被解释。浏览器只是获取带有一些JS的HTML:

var ehy = 5

稍后,当执行what函数时,它将触发一个ajax请求,该请求在成功时将#what的文本设置为PHP解释器很久以前确定的值

我希望能回答你的问题。