每次复选框更改其值时,我都想调用Javascript函数.我对选择类型的输入做同样的事情,它工作得很好.两个输入都在一个表中.
这是调用第一个函数的一个元素:
<td>
<select name="minuteEnd" id="minuteEnd" onChange="calculateWorkTime()">'.$dropDown_minuteEnd.'
</select>
</td>
以及调用第二个函数的部分
<td>
<input type="checkbox" name="deleteShift" id="deleteShift" onChange="updateSubmitButton()" /><br />
<input type="checkbox" name="deleteShiftConfirm" id="deleteShiftConfirm" onChange="updateSubmitButton()" />.
</td>
然后我在单独的脚本标签中定义了这两个函数,但我也尝试将它们定义在一个中,但没有解决问题.因为我并不总是需要它们,所以我为每个函数调用一个PHP函数.
这些PHP函数是
drawScriptCalculateWorkTime();
drawScriptUpdateSubmitbutton();
实际的Javascript代码是这样的:
function drawScriptCalculateWorkTime()
{
echo'
<script>
function calculateWorkTime()
{
//I work (My name can be found)
}
</script>
';
}
function drawScriptUpdateSubmitbutton()
{
echo'
<script>
function updateSubmitButton()
{
//I do not work. I get the error: ReferenceError: updateSubmitButton is not defined
//This is my code
var delete = document.getElementById("deleteShift").checked;
var deleteConfirm = document.getElementById("deleteShiftConfirm").checked;
if(delete && deleteConfirm)
{
document.getElementById("submitButton").disabled = false;
}
}
</script>
';
}
我的浏览器控制台总是告诉我
ReferenceError: updateSubmitButton is not defined,
但我检查了这个名字大约20次.此外,它总是告诉我窗口加载:
SyntaxError: missing variable name
这是指第二个javascript的第一行代码.
我已经检查了谷歌,甚至在这里找到了一个非常相似的问题(Javascript Uncaught Reference error Function is not defined),但该解决方案对我不起作用.
如果我没有提供所需的所有信息,我会立即提供.
约翰
解决方法:
在javascript中,delete是保留字,不能用于变量名.