当我从我的选项列表中选择一个值时,我有一个更改网址的问题。
<apex:actionFunction name="updateCategory" action="{!updateCategory}" rerender="posts" status="updateStatus">
<apex:param name="param" assignTo="{!selectedCategory}" value="{!discussionPageNum}" />
</apex:actionFunction>
<div class="ibtFilterStatus">
<apex:actionStatus startText="Updating..." id="updateStatus" startStyle="padding-right: 10px;"/>
<span class="select" id="select7">All Categories</span>
<apex:selectList id="ideacategories" value="{!selectedCategory}" size="1" onchange="hideSubscribeButton(); updateCategory(this.options[this.selectedIndex].value); doSearch('select7', this, 'ideaCategories')">
<apex:selectOptions value="{!categories}" />
</apex:selectList>
</div>
<div style="float: right" id="test">
<apex:outputLink style="margin-right:5px;font-size: 13px;{!IF(hasDiscussionNextPage,'','display:none;')}" value="?discussionPg={!discussionPageNum + 1}&ideaCategory={!selectedCategory}">Previous Discussion</apex:outputLink>
</div>
当我选择一个类别时,如何用id =“test”重新渲染我的div?
答案 0 :(得分:1)
我相信你只能重新渲染通过VF标签生成的页面元素(我可能在这里错了,我没试过!
用outputPanel替换div(它将生成相同的标记):
<apex:outputPanel styleClass="output" id="test">
<apex:outputLink ...
</apex:outputPanel>
你会注意到我使用的是CSS类而不是内联样式,最好这样做,然后将样式放在标题的<style>
块中。
更改为输出面板后,在updateCategory
动作功能中将其指定为重新渲染:
rerender="posts, test" **
当然,如果我怀疑doSearch也是一个动作函数,我建议你从那个函数中重新渲染,因为这是最后一个执行的函数。
答案 1 :(得分:1)
我得到了一个解决方案..
我只是在名为update category的动作函数方法中进行重定向。并且它运作良好..
感谢laceySnr所有回复...