你的英语不是很好,所以我将转述一个(对我来说)有意义的问题并回答这个问题......
听起来您有 2 CFLayoutArea
,并且您希望在其中一个中有一个链接(或按钮等),这将改变另一个的内容。
如果您将消除ColdFusion.navigate
作为一种选择,那么在我看来,您将不得不尝试其他几个基本相同的选择之一。我喜欢 jQuery。如果你不喜欢 jQuery,你可以使用另一个库,或者推出你自己的解决方案,但它们都会做同样的工作。
由于这段代码:
<cflayout name="foo" type="hbox">
<cflayoutarea name="nav">nav</cflayoutarea>
<cflayoutarea name="content">content</cflayoutarea>
</cflayout>
生成此 HTML:
<div id="foo">
<div id="nav" style="overflow:auto;float:left;">
nav
</div>
<div id="content" style="overflow:auto;float:left;">
content
</div>
</div>
您可以通过 jQuery 使用内容 DIV 的 ID 属性来更改其内容:
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script>
<script type="text/javascript">
$(document).ready(function(){
$("#goLink").click(function(e){
$("#content").load("content.cfm");
e.preventDefault();
});
});
</script>
<cflayout name="foo" type="hbox">
<cflayoutarea name="nav"><a href="#" id="goLink">go</a></cflayoutarea>
<cflayoutarea name="content">content</cflayoutarea>
</cflayout>