我有一个概念性的DOM问题--我希望这是有意义的。
我的页面(称为'Main')上有prototypeJS AJAX更新程序,我正在选择一个要编辑的记录,它将一个‘页面B’(一个部分)调用到‘主’页面上的一个div中。
当我点击部分中的表单时,它会调用'Main‘上的函数-但是更新程序“应该”更新分部上的div。但从来没有。我很确定DOM找不到它是因为它被渲染或者带到了主..。
我该怎么解决这个?
主
<script>
// pulls page B into Main div
function getItem( id ) {
var url = 'itemDetails.php';
var pars = { id:id };
var myAjaxOpts = new Ajax.Updater( 'itemDetail', url, {
method:'post'
,parameters:pars
,evalScripts:true
});
}
// post form and expects messages in 2 places (1) the upated div (on page B) and the message div on Main
// Only main showing up
function assignItem( frm ) {
var url = 'assignItem.php';
var pars = Form.serialize( frm );
var myAjaxOpts = new Ajax.Updater( 'subMessage', url, {
method:'post'
,parameters:pars
,evalScripts:true
,onSuccess: function( response ){
//console.log( 'request ready to be made' );
$( 'mainMessage' ).update( response );
}
});
}
</script>
<!-- page A - Main -->
<div id="mainMessage"></div>
<ul>
<li><a onClick="getItem( 1 );">item 1</a></li>
<li><a onClick="getItem( 2 );">item 2</a></li>
<li><a onClick="getItem( 3 );">item 3</a></li>
</ul>
<div id="itemDetail"></div>
<!-- end page A -->页面B(部分)
<!-- page B - Partial -->
<div id="subMessage"></div>
<form>
-- edit record ---
<input type="button" onClick="assignItem( this.form );" ></form>
<!-- end page B -->顺便说一句--应该注意到,这是一个“缩减”的示例(并且可能有排字),我正在按预期的方式获取数据,AJAX没有问题,只是部分中的div似乎对函数没有主功能。
Thx
发布于 2013-05-25 16:10:00
只需更改您正在更新的id。
改变这个:$( 'mainMessage' ).update( response );
by:$( 'subMessage' ).update( response );
https://stackoverflow.com/questions/16737703
复制相似问题