我如何使用PHP中的javascript函数返回值?

时间:2011-05-11 09:41:05

标签: php javascript

<script type="text/javascript">
           function mehdi(rno)
           {


               alert(rno);
               return rno * 10;
             }
</script>
    <input type="button" name ="submit" value="ثبت و تایید" onclick= " mehdi('10')">

<?php


?>

如何使用mehdi()函数的返回值?

5 个答案:

答案 0 :(得分:1)

在这种情况下,您无法使用PHP,因为PHP仅用于呈现HTML。

你必须使用AJAX(AHAH): http://en.wikipedia.org/wiki/Ajax_%28programming%29

答案 1 :(得分:1)

你不能! Javascript在浏览器上运行, PHP脚本执行完毕后运行。

答案 2 :(得分:1)

您不能先处理PHP,然后页面执行javascript。

您可以向您的PHP脚本发送Ajax请求。

答案 3 :(得分:0)

你可以在medi函数中做一个ajax请求,请求可以通过post发送到像“mehdi_js_result.php”这样的文件:)

var ajaxify = function(obj) {
        var xmlHttp = null;
        try {
            xmlHttp = new XMLHttpRequest();
        }catch(e) {
            try {
                xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
            }catch(e) {
                try {
                    xmlHttp = new ActiveXObject("Msxml2.XMLHTTP");
                }catch(e) {
                    xmlHttp = null;
                }
            }
        }if (xmlHttp) {
            obj.method = obj.method.toUpperCase();
            xmlHttp.open(obj.method, obj.url, true);
            xmlHttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
            if(obj.method == 'POST') {
                if(typeof(obj.params) != 'undefined') {
                    xmlHttp.setRequestHeader("Content-length", obj.params.length);
                }
            }
            xmlHttp.setRequestHeader("Connection", "close");
            xmlHttp.onreadystatechange = function () {
                if (xmlHttp.readyState == 4) {
                    var json = eval(xmlHttp.responseText);
                    if(json.success) {
                        if(typeof(obj.success) == 'function'){obj.success(xmlHttp.responseText);}
                    }
                    else {
                        if(typeof(obj.failure) == 'function') {obj.failure(xmlHttp.responseText);}
                    }
                }
            };
            if(obj.method == 'POST' && typeof(obj.params) != 'undefined') {
                xmlHttp.send(obj.params);
            }
            else {
                xmlHttp.send(null);
            }
        }
    };
    function ajax(mehdi_result) {
        ajaxify({
            method: 'POST',
            url: 'mehdi_js_result.php',
            params: 'result='+result,
            success: function(response) {
                var json = eval(response);
                alert('success callback function! '+json.data);
            },
            failure: function(response) {
                var json = eval(response);
                alert('failure callback function! '+json.data);
            }
        });
    }

答案 4 :(得分:0)

你不能直接这样做。你必须使用AJAX。

一旦代码到达客户端并在那里执行,您的服务器端脚本就已经终止了。

如果确实需要发送JavaScript返回值,请使用AJAX将它们传回服务器。