在IE8和IE7中出现此错误。只有一点javascript的经验,但试图在工作中调试别人的代码。谷歌搜索一些原因并使用相同的变量名称,因为某些类可能导致错误,但似乎不是这里的情况。
<tbody id="urlLinkTableBody">
<c:choose>
<c:when test="${!empty urlLinkUrls}">
<c:forEach var="urlLinkUrl" items="${urlLinkUrls}" varStatus="status">
<tr id="urlLinkRow${status.index}">
<td align="left">
<c:if test="${!vo.injectViewMode}">
<span id="editUrl${status.index}">
${urlLinkUrl}
</span>
<input id="editUrlHidden${status.index}" type="hidden" name="urlLinkUrls" value="${urlLinkUrl}"/>
</c:if>
<c:if test="${vo.injectViewMode}">
<a href="javascript:windowPop('${urlLinkUrl}')">${urlLinkUrl}</a>
</c:if>
</td>
<c:if test="${!vo.injectViewMode}">
<script type="text/javascript">
jQuery('#editUrl${status.index}').editInPlace({
callback: function(original_element, newvalue, original){
if (isUrl(newvalue)) {
document.getElementById('editUrlHidden${status.index}').value = newvalue;
return newvalue;
}
alert("Invalid URL");
return original;
},
show_buttons: true
});
</script>
</c:if>
答案 0 :(得分:0)
首先,检查您是否已包含editInPlace
插件的脚本。
其次,根据插件的工作方式,您可能需要在文档就绪处理程序中添加代码,如下所示:
<script type="text/javascript">
jQuery(function() {
jQuery('#editUrl${status.index}').editInPlace({
callback: function(original_element, newvalue, original){
if (isUrl(newvalue)) {
document.getElementById('editUrlHidden${status.index}').value = newvalue;
return newvalue;
}
alert("Invalid URL");
return original;
},
show_buttons: true
});
});
</script>