function checkData() {
var temp = 0;
var totalMarks = countMark(temp);
if (totalMarks != 100)
window.alert("Marks must total 100");
}
function countMark(mark) {
var totalMark = 0;
totalMark += parseInt(mark)
return totalMark;
}
function doAdd() {
var taskid = document.getElementById("taskid").value;
var taskname = document.getElementById("taskname").value;
var taskmark = document.getElementById("taskmark").value;
if (taskid.length === 0)
window.alert("Task Id cannot be empty!");
if (taskname.length === 0)
window.alert("Task name cannot be empty!");
if (taskmark.length === 0)
window.alert("Task Mark cannot be empty!");
else if (!markpattern.test(taskmark))
window.alert("Invalid data in mark field");
var marks = parseInt(document.getElementById("taskmark"));
if (marks < 0 || marks > 100)
window.alert("Marks out of range. Please re-enter");
countMark(marks);
}
제 질문은 doAdd() 함수를 계속 호출하는 것입니다. 내 표시가 계속 추가됩니다. C++ 에서처럼 참조를 전달하고 싶습니다. 내 함수 countMark (...)가 계속 추가됩니다.계속 함수를 덮어 쓰지 않고 값을 계속 추가하십시오.
그 후, 내 양식을 제출하면 내 양식은 checkData() 함수를 호출합니다 내 totalmark가 100이 아니면. 경고 및 오류 메시지가 표시됩니다.
내 코드가 작동하지 않습니다. 내 countMark 함수가 어딘가에있는 것 같아요.
총계에 'var totalMark = 0;'및 'countMark'범위 내에있는 'totalMark'를 재 할당합니다. '() window.totalMark) window.totalMark = 0;처럼 시도하십시오 – rab
[jsfiddle] (http://jsfiddle.net)을 제공 할 수 있습니까? –
@LightStyle jsfiddle을 만들어주세요 .. 내가 너를 위해 그것을 고치겠습니다. 나는 시간이 덜 걸립니다. – rab