我正在创建一个网站,该网站可以将以10为基数的数字转换为Binary,以获得我正在上课的额外学分。

我的网站URL是:http://loganf.tynken.com。我的目标是让用户在表单中输入数字,以使该数字成为<h4>标记中的字符串,并由JavaScript用来获取字符串,使其成为数字,然后使用更多代码在屏幕上显示二进制数。

我在将字符串输入数字时遇到麻烦。

此处显示的JavaScript现在是我的最终产品,但是是尝试显示数字的一种方法。



    var base10, base2, v2_0, v2_1, v2_2, v2_3, v2_4, v2_5, v2_6, v2_7,
    v2_8, v2_9, v2_10, v2_11, v2_12;
    base10 = document.getElementById('base10');
    base2 = document.getElementById('base2');
    v2_0 = 1;
    v2_1 = 2;
    v2_2 = 4;
    v2_3 = 8;

    function assignvarbinaryvalue() {
    var binaryNumber = Number(base10);
    var newEl = document.createElement('h4');
    var newText = document.createTextNode(binaryNumber);
    newEl.appendChild(newText);
    var position = document.getElementById('binaryID');
    position.appendChild(newEl);
    }

<h1>Binary Translator</h1>
<p><div id="base10"><?php echo $_GET['base10']; ?></div><p id="binaryID"></p></p>

最佳答案

var base10 = document.getElementById('base10');
var base2 = document.getElementById('base2');
document.getElementById('submit').onclick=function() {

var number=parseInt(base10.value);
 base2.value=decimalToBinary(number);

}

function decimalToBinary(n){
    var binaryNumberStr = "";
    var binaryNumber=0;
    var step=0;

    while (Math.pow(2, step)<n)
    {
       step+=1;
    }
    for(var i=step; i>=0; i--){

    var c=Math.floor(n/Math.pow(2, i))

    n-=Math.pow(2, i)*c;
    binaryNumber+=Math.pow(2, i)*c;
    binaryNumberStr+=c;
    }
    //binaryNumberStr+=(n-binaryNumber)
    return binaryNumberStr;
}

<p>Number:</p>
		<input type="text" id="base10" name="base10" size="15" maxlength="30">
		<input type="submit" id="submit" name="submit" value="submit">
		<input type="text" id="base2" name="base2" disabled size="15" maxlength="30">

关于javascript - 如何使用JavaScript将php表单输入更改为数字?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/53026968/

10-12 00:06
查看更多