简体   繁体   English

如何使用全局变量,以便我可以在我的 javascript 模块上使用它

[英]How to use global variable so i can use it on my javascript module

i want to get all of this input values to my budget app but i have problem to get values of the radio button because it says its undefined.我想将所有这些输入值添加到我的预算应用程序中,但我无法获取单选按钮的值,因为它说它未定义。 i create global function to get by radio button value.我创建全局 function 以通过单选按钮值获取。 but the others is in javascript module.但其他的是 javascript 模块。

https://jsfiddle.net/8k3gw7ty/ https://jsfiddle.net/8k3gw7ty/

<div class="button_income">
  <input type="radio" name="type" value="inc" id="incomebtn" onclick="getButtonValue();" checked>
  <label for="incomebtn" class="income-btn">+ Add Income</label>
</div>
<div class="button_expense">
  <input type="radio" name="type" value="exp" id="expensebtn" onclick="getButtonValue();">
  <label for="expensebtn" class="expense-btn">+ Add Expense</label>
</div>
<div class="desc_input">
  <label class="labelinput" for="input-desc">Your Income/Expense Description</label>
  <input id="input-desc" type="text" class="input_description" placeholder="Salary">
</div>
<div class="value_input">
  <label class="labelinput" for="input-val">Value of Income/Expense</label>
  <input id="input-val" type="number" class="input_value" placeholder="Rp. 100.000">
</div>

Actually there was no default value for your val variable.实际上,您的val变量没有默认值。 Since val will only get value when you click on the checkbox (according to your code).因为val只有在您单击复选框时才会获得价值(根据您的代码)。

Also you were returning val which isn't necessary.您还返回了不必要的val I've also removed the budgetController .我还删除了budgetController

Hope this'll help.希望这会有所帮助。

 let val = 'inc'; // default value function getButtonValue() { var type = document.getElementsByName("type"); if (type[0].checked) { val = type[0].value } else if (type[1].checked) { val = type[1].value } } const domController = (function() { return { getInput: function() { return { type: val, description: document.querySelector(".input_description").value || 0, value: parseFloat(document.querySelector(".input_value").value) || 0 } } } })(); const controller = (function( UI) { var ctrlAddItem = function() { var input = UI.getInput(); console.log(input); } document.querySelector(".addbtn").addEventListener("click", ctrlAddItem) document.addEventListener("keypress", function(event) { if (event.keyCode === 13 || event.which === 13) { ctrlAddItem(); } }); })( domController);
 <div class="button_income"> <input type="radio" name="type" value="inc" id="incomebtn" onclick="getButtonValue();" checked> <label for="incomebtn" class="income-btn">+ Add Income</label> </div> <div class="button_expense"> <input type="radio" name="type" value="exp" id="expensebtn" onclick="getButtonValue();"> <label for="expensebtn" class="expense-btn">+ Add Expense</label> </div> <div class="desc_input"> <label class="labelinput" for="input-desc">Your Income/Expense Description</label> <input id="input-desc" type="text" class="input_description" placeholder="Salary"> </div> <div class="value_input"> <label class="labelinput" for="input-val">Value of Income/Expense</label> <input id="input-val" type="number" class="input_value" placeholder="Rp. 100.000"> </div> <button><i class="fas fa-check addbtn">Save</i></button>

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 如何将Blade变量传递给vue实例,以便可以在JavaScript文件中使用它? - How do I pass a blade variable to a vue instance so I can use it in my JavaScript file? 如何在JavaScript中的多个函数中使用Global变量? - How can I use Global variable across multiple functions in JavaScript? 如何使此javascript函数不使用全局变量? - How can I make this javascript function not use a global variable? 如何添加 UMD 以便我可以在浏览器中使用我的模块并将其用作 NPM 模块? - How can I add UMD so I can use my module in the browser and as an NPM module? 我怎么能传递这个变量来从我的模块中使用它? - How I can pass this variable to use it from my module? 如何在JavaScript中使用全局变量? - How to use global variable in JavaScript? 我可以在这里使用Java闭包代替全局变量吗? - Can I use Javascript Closures here instead of a global variable? 如何在JavaScript中使用PHP变量? - How can I use a PHP variable inside of my JavaScript? 如何在组件中的JavaScript等有角.ts的If中使用全局变量 - How can i use a global variable in a If on angular .ts like JavaScript inside a component Javascript:我如何为 2 个不同的 html 页面使用“全局变量”? - Javascript: how i use a ''global variable'' for 2 different html pages?
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM