gpt4 book ai didi

javascript - 使用 jquery 设置文本字段的值

转载 作者:行者123 更新时间:2023-11-30 13:13:25 25 4
gpt4 key购买 nike

我正在尝试创建一个包含员工月薪的简单 html 文件,并且必须计算每笔薪水的应纳税额!我使用“添加”按钮添加更多员工文本字段,这会创建一个包含类似 div 的新 div 类!在工资文本字段的 onchange 事件中,我无法设置相应员工的税值!

很遗憾,我无法上传屏幕截图,所以我将所有代码放在一起,以使我的问题尽可能清楚!

这是添加员工区域的jquery代码:

$(document).ready(function(){

var counter = 2;

$("#add_emp").click(function () {


var newTextBoxDiv = $(document.createElement('div'))
.attr("class", 'em_area' + counter);

newTextBoxDiv.after().html('<br><label>Employee '+counter+' </label> <input id=em_name name=em_name type=text required /> <label>Position</label> <input id=em_post name=em_post type=text required /> <label>Monthly Salary</label> <input id=em_sal name=em_sal size=10 type=text required /> &nbsp &nbsp &nbsp <label>Salary Tax</label> <input id=em_taxds type=text size=10 required /> ' );

newTextBoxDiv.appendTo("#all_emps");


counter++;
});

$("#del_emp").click(function () {


counter--;

$(".em_area" + counter).remove();

});
});

这是html代码:

<div id="all_emps">
<div class="em_area">
<label>Employee 1</label>
<input type=text required />
<label>Position</label>
<input type=text required />
<label>Monthly Salary</label>
<input id=em_sal type=text required size=10 onchange="calculateTax(this.value);" />
&nbsp &nbsp &nbsp
<label>Salary Tax</label>
<input id=em_tax name=em_tax type=text required size=10 readonly />
&nbsp &nbsp &nbsp &nbsp &nbsp &nbsp &nbsp &nbsp
<a href="#" id="add_emp"><img src="add.jpg" width="30" height="30"></img></a>
&nbsp &nbsp &nbsp &nbsp &nbsp
<a href="#" id="del_emp"><img src="minus.jpg" width="30" height="30"></a>
</div>
</div>

这是我遇到问题的计税代码:(??????)

function calculateTax(sal)
{
int salary = parseInt(sal);
if(salary < 5000)
{
document.getElementById("em_tax").value = '0' ;
}
else if(salary>5000 || salary=5000)
{
var due_tax ;
due_tax= salary/100;
due_tax=salary - due_tax;

document.getElementById("????????").value = due_tax;
}
}

最佳答案

我观察到的第一件事是您的 HTML 中有重复的 Id。确保该 id 在页面上唯一。尝试给它们 类名代替..

<input class=em_sal type=text required size=10 onchange="calculateTax(this.value);" />
&nbsp &nbsp &nbsp
<label>Salary Tax</label>
<input class=em_tax name=em_tax type=text required size=10 readonly />

在 JQuery 中编写更改事件

$('#all_emps').on('change' , '.em_sal', function() { // Fire the change event

var salary = parseInt(this.value);
var dueTax = 0;
if(salary < 5000){
// Do Nothing
}
else if(salary >= 5000)
{
due_tax= salary/100;
due_tax= salary - due_tax;
}
// This will get the corresponding tax input for the employee..
$(this).closest('div').find('.em_tax').val(due_tax) ;
});

Check FIDDLE

关于javascript - 使用 jquery 设置文本字段的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13005913/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com