日期:2014-05-16  浏览次数:20620 次

“修改”页面的多重条件载入,如何最行之有效?
本帖最后由 Donthan 于 2012-10-15 19:03:30 编辑 公司现在有个项目,在页面载入时,根据城市的不同,载入的数据内容不同。
目前有7项内容需要页面载入时就加载。并且因为是修改功能,所以还要传递大量的参数来确定哪个是从数据库取到的值,然后判断是否checked或者selected

比如说酒店,页面初始选择是北京,就只需要载入北京的酒店。
然后餐厅,也是只载入北京的餐厅。旅游景区景点,导游、司机等同样根据城市载入……

这些还不是最头疼的,最头疼的是,因为服务种类的不同,表单的样式也有些不一样,比如说A服务有div#div_a,而B服务只需要一个层是div#div_b就行了,C服务却是要div#div_a和div#div_b都要显示。这样就要在onload中先判断是A还是B还是C,然后异步判断需要载入哪个DIV,但是DIV里面的内容又是通过Ajax获取的……

求解,如何能有效又清晰的理顺这里面的思路?并且能让程序结构最清楚?

另外:我没用任何框架,直接写的JS,程序是ASP
------最佳解决方案--------------------
模块化,把城市识别放为头部第一个模块,
你说的阿爸才服务是什么东东,是页面上三个区块吗还是三种服务类型
总之把数据处理与样式先分开,不然太乱了,搞不明白
总共三种服务样式,都写出来<div id="div_a"></div>这里面添加了所有的属性,值为空
同理bc,用js处理,异步取值,首先控制块的显示,例如,显示A块的话,把bc都隐藏掉
也为用户更改主意做准备,第二步给div_a内控件赋值,回调函数可以是个json数据,一个个
往里赋值。其他的也都一样,处理好一个,其他的几乎没有工作量

数据都填好了,再来更改样式,红还是黑,多高多宽往哪浮动,这样改起来你说是不是很方便呢

------其他解决方案--------------------
思路都有了,按照你的方法来实现不就好了
将需要的参数全部赋值给js变量,然后js判断这些变量来实现需要如何加载或者布局

var serivcetype='<%=servicetype%>'....

------其他解决方案--------------------
把模块图画一画,思路理清,就不乱了
------其他解决方案--------------------
楼主说的那些,都是做网站很基本的,不知道头疼什么,难道之前从没做过项目吗.
------其他解决方案--------------------

就拿OA系统来说。
frm_AddNew可以很方便的使用onload函数,根据一个值加载多个值。
但是对于frm_Modify的表单就略有些复杂了。
条件少的话也好说,问题是怕一些所谓“条件的条件”。
举个例子说,ABC是三个raido选择,选择A之后,div_a才会显示,然后这里面会有个select_a控件,根据数据库取到的值,决定select_a的selectedIndex,然后根据这个selectedIndex再来判断后面的span_a的内容和hidden的内容。

当然我举的例子很容易,用两个Ajax就可以,问题就在于当这种情况很多的表单呢?而且受浏览器加载方式的不同,onload事件中的函数也需要慎用,据说img这种东西就很头疼。。
------其他解决方案--------------------
地区
场所
服务

听下来 这个页面就 3块么