Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/387.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
需要通过HTML用户输入仅使用JavaScript填充表的帮助吗_Javascript_Html - Fatal编程技术网

需要通过HTML用户输入仅使用JavaScript填充表的帮助吗

需要通过HTML用户输入仅使用JavaScript填充表的帮助吗,javascript,html,Javascript,Html,请容忍我。我已经回到大学从事第二职业,HTML和JavaScript对我来说是新的。我正在尝试完成一个简单的任务,通过HTML接受用户输入numShares&numYears。我正在尝试使用JavaScript填充一个3列表格(年,起始金额,和结束金额)。用户输入的唯一计算方法是每年将numShares翻一番问题:实际上,我没有收到任何输出(或错误消息)。感谢您的指导 示例输出: 以下是迄今为止我掌握的HTML和JS: var amt=document.getElementById(“数量”

请容忍我。我已经回到大学从事第二职业,HTML和JavaScript对我来说是新的。我正在尝试完成一个简单的任务,通过HTML接受用户输入
numShares
&
numYears
。我正在尝试使用JavaScript填充一个3列表格(
起始金额
,和
结束金额
)。用户输入的唯一计算方法是每年将
numShares
翻一番问题:实际上,我没有收到任何输出(或错误消息)。感谢您的指导

示例输出:

以下是迄今为止我掌握的HTML和JS:

var amt=document.getElementById(“数量”)值;
var numYears=document.getElementById(“年”).value;
var totalAmt、newE1、newE2、newE3、newText;
elTable=document.getElementById(“利润”);//获取表格
函数总数(){
对于(var i=0;i


输入股票数量:
输入投资年份:




年 起始金额 期末金额
侦听ID为
quaty
的元素上的单击事件可能不是您的本意。

修改新代码: 修改您在问题中编辑的新代码,您可以获得下面的功能代码。这有相当少的代码注释,但有许多类似于对原始代码所做的更改。请参阅该代码(下文进一步)了解这些附加注释

其他文档(除了以下修改原始代码时引用的文档):

函数总数(){
//您需要在此处获取用户输入,而不是在页面加载时。
var amt=+document.getElementById(“数量”)值;
var numYears=+document.getElementById(“年”).value;
var totalAmt=amt;//初始投资金额
var yearStartAmount;
var elTable=document.getElementById('利润');//获取表格

对于(var i=1;i,这里是代码的工作重写:

<form method="post" action="" name="invest">
    <h2></h2>

    Enter Number of Shares: <input type="text" id="qty" required><br>
    Enter Years to Invest: <input type="text" id="years" required><br/><br>
    <button type="button" value="Calculate Return" id="total">
        Calculate Return</button>
    <br><br><br>

</form>

<table id="profits">
    <thead>
        <tr>
            <th>Year</th>
            <th>Start Amount</th>
            <th>End Amount</th>
        </tr>
    </thead>
    <tbody id="tb"> 

    </tbody>

</table> 

输入股票数量:
输入投资年份:

计算回报


年 起始金额 期末金额
javascript

    var totalAmt = 0;
    var table;


    function total() {
        var amt = document.getElementById("qty").value;
        amt = parseInt(amt, 10)
        var numYears = document.getElementById("years").value;

        for (var i = 1; i <= numYears; i++) {
            totalAmt = totalAmt + amt;
            //  alert(totalAmt);
            //  alert(amt);

            // table += '<tr><td>' + i + '</td><td>$' + amt + '</td><td>$' + totalAmt + '</td></tr>';

            var tbody = document.getElementsByTagName('tbody')[0];

            var row = document.createElement('tr');

            var cell_years = document.createElement('td');
            var cell_amt = document.createElement('td');
            var cell_totalAmt = document.createElement('td');

            var text_years = document.createTextNode(i);
            var text_amt = document.createTextNode('$' + amt);
            var text_totalAmt = document.createTextNode('$' + totalAmt);

            cell_years.appendChild(text_years);
            cell_amt.appendChild(text_amt);
            cell_totalAmt.appendChild(text_totalAmt);
            row.appendChild(cell_years);
            row.appendChild(cell_amt);
            row.appendChild(cell_totalAmt);

            tbody.appendChild(row);

        }


    }

    // call total() when button clicked
    var attachee = document.getElementById('total');
    attachee.addEventListener('click', total);

    // var elAddRows = document.getElementById('qty', 'years');
    // elAddRows.addEventListener('click', function() {
    //     total();
    // });
var总金额=0;
var表;
函数总数(){
var amt=document.getElementById(“数量”)值;
金额=parseInt(金额,10)
var numYears=document.getElementById(“年”).value;

对于(var i=1;i,您的实际问题是?抱歉,太晚了,我已经讨论了好几个小时了。当我单击“计算返回”按钮时,表格没有填充。HTML或JS控制台中没有错误???
document.getElementById('quaty','years'));
不起作用。仅将单个字符串作为1个参数并返回单个元素,或者如果在
文档中找不到ID,则返回
null
。谢谢,我更新了JS。如果您有任何其他指导,我将非常感谢!这次没关系,因为每个人都适应了(而且您所做的更改是边界性的).仅供参考:一旦你有了答案,我们不赞成将你的问题更改到基本上是另一个问题的程度,从而使答案无效。改进问题是好的。添加要求的附加信息是好的。除非这样做会显著改变问题。这里,你尝试的方式的改变g添加到表中是有边界的。如果您确实进行了此类更改,请执行您所做的操作,并在您更新问题的所有答案上留下注释。我尝试侦听表示“计算”按钮的ID“total”(似乎符合逻辑),但也未给出任何输出或错误。“total”是正确的ID。现在查看您的
total()
JS函数。我看不到您在哪里定义了
变量,所以您需要对其进行排序。
document.getElementById('Profiles')
将为您提供表的引用。但是
+=
不是修改表的方法。您可能需要查看
document.createElement(…)的文档
并尝试使用
表追加新的
s。appendChild(…)
等等。我认为你是对的。几个小时前我就沿着这条路走了,然后朝着一个新的方向走去。我会像你提到的那样回去尝试重新设计。感谢你的时间和指导。非常欢迎你。当问题出现时,请随时提问。尽量不要只给你答案,因为我已经解决了问题lem将帮助它更好地进入你的大脑:)嗨,更新了JS。我认为我在正确的轨道上,但仍然没有输出或错误。我还需要创建新元素吗?如果需要,我应该在HTML或JS中这样做吗?我知道使用“amt”在新的环境中,E2必须进行调整,因为每次都会输出相同的值。我今天已经在这里工作了将近12个小时。现在是睡觉时间!我期待着你能提供任何指导。保重。非常感谢。你真的没有那么多麻烦,但非常感谢。我将研究你的代码以及你提供的链接漫游。我学习这一点非常重要