Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/79.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
Javascript 如何使用动态输入字段的值执行计算?_Javascript_Jquery_Html_Arrays - Fatal编程技术网

Javascript 如何使用动态输入字段的值执行计算?

Javascript 如何使用动态输入字段的值执行计算?,javascript,jquery,html,arrays,Javascript,Jquery,Html,Arrays,我的html表单代码有点问题 在我的代码中,很少有动态生成的输入字段。在动态生成的每个输入字段中,都有一些数值。我需要用它们做一些数学计算 =“PE+ROCE+(2-SG)-(4-DY/2)” 这是我的计算模式。其中,PE、ROCE等是生成的动态输入字段的ID 使用生成的动态输入字段的值,我需要执行上述计算。 当用户单击“计算”输入按钮时,必须执行此计算。 然后,上面的最终计算值将显示在我的表单代码底部的输出标记中。 我试图自己解决这个问题。但不幸的是,这项任务失败了 现在有人可以帮我解决这个问

我的html表单代码有点问题

在我的代码中,很少有动态生成的输入字段。在动态生成的每个输入字段中,都有一些数值。我需要用它们做一些数学计算

=“PE+ROCE+(2-SG)-(4-DY/2)”

这是我的计算模式。其中,PE、ROCE等是生成的动态输入字段的ID

使用生成的动态输入字段的值,我需要执行上述计算。 当用户单击“计算”输入按钮时,必须执行此计算。 然后,上面的最终计算值将显示在我的表单代码底部的输出标记中。 我试图自己解决这个问题。但不幸的是,这项任务失败了

现在有人可以帮我解决这个问题了。 我将非常感激

这是我的完整表格代码

//在此处定义标题,以便我们可以全局访问它
//在应用程序中
让标题=[]
//将创建的HTML字符串追加到DOM
函数初始输入(标题列表){
jQuery(“.fields”).append(createInputsHTML(headingList))
}
//要追加的HTMLT模板
//去大教堂
函数createInputsHTML(标题列表){
让html=''
headingList.forEach(heading=>{
如果(标题!=“公司”){
html+=`${heading}:`
html+=``
html+='
' } }) 返回html } //接收数据 //此数据在应用程序生命周期的后期到达, //因此,最好返回承诺对象 //得到解决(更多信息,请查看JS Promise) 函数getJSON(){ 返回新承诺(解决=>{ jQuery.get(“https://cors-anywhere.herokuapp.com/www.coasilat.com/wp-content/uploads/2019/06/data-1.txt,函数(数据){ 解析(JSON.parse(数据)) }); }) } //处理原始JSON数据 函数processRawData(数据){ 返回新承诺(解决=>{ 常数公司数据=[] //创建数据数组 //处理多张纸 Object.values(data).forEach((表,索引)=>{ 表1.forEach((公司,i)=>{ companyData.push({…company) }) //只创建一次标题 如果(索引==0&&i==0){ Object.key(公司).forEach(项目=>{ headers.push(item.trim()) }) } }) }) 解析(公司数据) }) } $(异步函数(){ 让列表=[]; 函数初始化自动完成(列表){ const thisKey='公司' $(“#公司”).autocomplete('选项','源',函数(请求,响应){ 回应( list.filter(项=>{ if(项[thisKey].toLowerCase().includes(request.term.toLowerCase())){ item.label=项目[此键] 退货项目 } }) ) }) } $(“#公司”)。自动完成({ 最小长度:3, 资料来源:名单, 焦点:功能(事件、用户界面){ //“物种”是不变的,不应该修改 $(“#公司”).val(ui.item.company); 返回false; }, 选择:功能(事件、用户界面){ //处理n个字段/列 标题。forEach(标题=>{ $('#'+标题).val(ui.item[标题]) }) 返回false; } }); //开始数据下载、处理和使用 getJSON() 。然后(json=>{ 返回processRawData(json) }) 。然后(数据=>{ //这样我们就可以看到我们使用的是什么数据 console.log(数据) //使处理后的数据可以全局访问 列表=数据 初始化自动完成(列表) 输入(标题) }) });

公司:

最终金额0


尝试每个输入循环

 $("#Calculate").click(function(){
        var peVal,roceVal,sgVal,dyVal;
    jQuery(".fields input").each(function (){
        var idHeading=$(this).attr("id");

        if(idHeading=="Your ID for PE input"){
            peVal=parseInt($(this).val());
        }

        if(idHeading=="Your ID for ROCE input "){
            roceVal=parseInt($(this).val());
        }

        if(idHeading=="Your ID for SG input"){
            sgVal=parseInt($(this).val());
        }

        if(idHeading=="Your ID for DY input"){
            dyVal=parseInt($(this).val());
        }

    });
    var output=peVal+roceVal+(2-sgVal)-(4-dyVal/2);
});

您在代码的哪一部分执行
“A+B+(6-C)+(2-D/3)”
?请创建A-您没有描述如何重新创建问题,自动完成代码将问题与Adalinivascu混淆。我正在使用动态输入字段值进行此计算。输入字段的值将代替A、B、C、D。我刚才用这个来告诉你们计算的模式。谢谢,在哪里?什么时候用户必须做什么才能看到此计算结果?您的尝试在哪里?这不只是授权问题吗?还有,既然已经有jQuery,为什么不使用它呢?当用户单击“计算”按钮时,将执行此计算。我试着自己解决这个问题。但这次失败了。希望你能理解。钱袋问题?只是修正了,只是修正了打字错误。现在请看。拉维·帕特尔谢谢你的回答。。。我只是想用你的答案,但我觉得有问题。代码工作不正常。请在这里检查“”@Ravi这些值是字符串格式的,您需要解析才能进行任何计算非常感谢Ravi Patel。。终于得到了正确的答案。。。只是因为你的帮助。。。再次感谢。。