我正在使用 jquery ONCLICK 将模块加载到 div 中。代码如下。
<
function shomdes(whrfrm,fboxx) { // Show the description for a select measure.
// Called from the following modules wih the enumerated whrfrm value:
// emm explorm explormx explorm2 explorm2x explorm3 explorm4 explorm4x cmf2me graph1
// 3 0 0 2 2 3 4 4 0 0
var vflg = 0;
var mea = '';
for( var i=0; i<fboxx.options.length; i++ ) { // Find the selected measure.
if ( fboxx.options[i].selected && fboxx.options[i].value != '' ) { // Selected and non-blank.
mea = fboxx.options[i].value; // Get the measure selected to display the description for.
break;
}
}
if ( mea != '' ) {
\$('#graphhere').load('imdesc.cgi?str='+document.Choice.govlevel.value+'~x'+':'+mea+':'+'7x~'+document.Choice.echoice[document.Choice.echoice.selectedIndex].value+':1');
} else {
vflg = lrtMsg('No measure has been selected.','mea'); // A measure must be selected.
}
}
我通过用户界面上的按钮调用 shomdes。我查看了一些早期的帖子并尝试了一些建议,但没有成功。我已经验证所有参数都正确,并且确实进入了 'if ( mea != '' ) {' 分支,但不执行。我在其他地方使用这种方法并且它有效。控制台中没有任何内容。
我尝试使用上面的 load() 并使用innerHTML 将度量描述加载到 div 中。我觉得 jquery 没有在 load() 情况下加载,所以我尝试使用不同的 jquery 库而不进行任何更改。在innerHTML案例中,我似乎无法在OBJ数据部分中获得正确的引号。我希望它在这两种情况下都能在 div 中显示描述。但什么也没发生。 imdesc 模块未加载。任何帮助将不胜感激。谢谢
有几个原因可能导致此问题。我将介绍一些可能性以及如何解决它们。
JavaScript 和 jQuery 加载:确保 JavaScript 和 jQuery 在页面上以正确的顺序正确加载。在使用任何 jQuery 函数之前验证 jQuery 是否已加载。另外,请确保控制台中不存在可能停止脚本执行的 JavaScript 错误。
事件处理:仔细检查 onclick 事件处理程序是否已正确设置并且正确调用了 shomdes()。
变量和元素 ID:确保 JavaScript 和 HTML 中的所有变量名称和元素 ID(Choice、govlevel、echoice、graphhere 等)拼写正确。
服务器端脚本:确保imdesc.cgi位于同一域中,可访问,并且返回正确的数据。另外,请确保服务器配置为执行 CGI 脚本。
URL 编码:您的 .load() 函数使用各种参数构造一个 URL。如有必要,请确保这些内容经过 URL 编码,特别是如果它们可以包含特殊字符。但是,如果您在控制台中没有看到错误,这可能不是问题。
控制台日志:在代码中添加一些控制台日志语句以跟踪其执行情况。