将javascript值传递给html

时间:2016-02-03 02:14:12

标签: javascript php html

这与我之前的问题有关:retrieving video from database using php

在上一个问题中,我使用ajax表单和$(“#speed”)。val(html)在javascript中传递 speedMbps ;期望返回值,所以我无法在viewvideo.php中嵌入我的html代码。

我想到了将speedMbps传递到我的php的另一种方法。

将值speedMbps传递给我的html表单,该表单可以使用POST方法将数据发送到我的php文件。

var imageAddr = "testimage.jpg"; 
var downloadSize = 2097152; //bytes

window.onload = function() {
    var oProgress = document.getElementById("speed");
    oProgress.value = "Loading the image, please wait...";
    window.setTimeout(MeasureConnectionSpeed, 1);
};

function MeasureConnectionSpeed() {
    var oProgress = document.getElementById("speed");
    var startTime, endTime;
    var download = new Image();
    download.onload = function () {
        endTime = (new Date()).getTime();
        showResults();
    }

    download.onerror = function (err, msg) {
        oProgress.value = "Invalid image, or error downloading";
    }

    startTime = (new Date()).getTime();
    var cacheBuster = "?nnn=" + startTime;
    download.src = imageAddr + cacheBuster;


    function showResults() {
        var duration = (endTime - startTime) / 1000;
        var bitsLoaded = downloadSize * 8;
        var speedBps = (bitsLoaded / duration).toFixed(2);
        var speedKbps = (speedBps / 1024).toFixed(2);
        var speedMbps = (speedKbps / 1024).toFixed(2);
        return speedMbps;
        oProgress.value = "Your connection speed is:        <br />" + 
           speedBps + " bps<br />"   + 
           speedKbps + " kbps<br />" + 
           speedMbps + " Mbps<br />";

document.getElementById("speed").value = speedMbps;   

Html代码

                <input type="text" id="speed" name="speed" value="">

viewvideo.php

$speed= $_POST['speed'];

编辑:当我在我的php文件中回显$ speed时,它没有得到回声..看起来没有值从javascript传递到我的html表单。

控制台上的

错误是

上意外的输入结束
document.getElementById("speed").value = speedMbps;

2 个答案:

答案 0 :(得分:0)

Your are using return statement before setting up data into form.

document.getElementById("speed").value = speedMbps;    return speedMbps;

答案 1 :(得分:0)

i solve the problem.

deleting return speedMbps; i manage to retrieve the value and pass the value into my php file.