Salesforce: JS无法调用后台的方法
最近碰到的一个比较棘手的问题。
在VF页面执行一个操作,正常应该会通过JS执行actionFunction调用后台的一个方法,然后rerender相应的值返回到页面中。
但是实际上并没有得到正确的值。
经过测试后发现,后台的方法并没有调用。
仔细检查相应的代码后发现,在执行actionFunction之前会调用一个JS方法。
在该JS方法中存在除以0的情况。
该情况并不会在调试台中报错,所以不易察觉。
将除以0的情况排除后,该代码可正常运行。
简单错误示例:
<apex:inputField value="{!Account.Test__c}" onchange="checkNewValue()"></apex:inputField>
<apex:actionFunction name="checkValueFun" action="{!checkValue}" reRender="theTable"></apex:actionFunction>
function checkNewValue() {
var test = 1 / 0;
checkValueFun();
}