首页 新闻 会员 周边

EasyUI和MVC的数据传递方式

0
悬赏园豆:5 [已解决问题] 解决于 2016-05-19 09:48

比如combobox组件。按照EasyUI官方的说法加载数据的方式有两种:

1、“通过<input>标签创建下拉列表框。”

2、“使用Javascript创建下拉列表框。”

第一种加载的方式例子:data-options="valueField:'Value',textField:'Text',data:@ViewBag.province“

第二种加载数据的方式是通过访问url获取后台数据。

  1. $('#cc').combobox({   
  2.     url:"/ERP/CustomerTouche/LoadData",   
  3.     valueField:'id',   
  4.     textField:'text'
  5. });

我的问题是这样的:

如果采用第一种方式,html页面中的代码比较多,看着也不舒服。但是如果采用第二种方式加载数据,加入页面上有多个combobox组件,就需要多次访问后台?

 

德展自动化的主页 德展自动化 | 菜鸟二级 | 园豆:206
提问于:2016-05-16 20:48
< >
分享
最佳答案
0

你后台返回一个集合绑定到viewBag或者返回一个实体,集合放到实体里。

直接在页面上foreach不就完了么。

收获园豆:5
天琴座 | 菜鸟二级 |园豆:213 | 2016-05-17 11:39

这个是一个好办法,我现在觉得既然使用EasyUI,还是使用JS的方法,将常用的一些组件的方法封装一下,代码看着还是比较舒服的。

德展自动化 | 园豆:206 (菜鸟二级) | 2016-05-19 09:48
其他回答(2)
0

给你个列子:1.所属班级:&nbsp;<input class="easyui-combobox" id="s_gradeId" name="s_gradeId" size="10" data-options="panelHeight:'auto',editable:false,valueField:'id',textField:'gradeName',url:'gradeComboList'"/>

懂了吗,万一不行就用下拉框实现

2.

&nbsp;性别:&nbsp;<select class="easyui-combobox" id="s_sex" name="s_sex" editable="false" panelHeight="auto">
<option value="">请选择...</option>
<option value="男">男</option>
<option value="女">女</option>
</select>  这里是更新option的value值,用ajax发请求 获取到后端的数据动态赋值。

 

 

停留在时间上1秒 | 园豆:225 (菜鸟二级) | 2016-05-16 21:04
0

其实使用第一种比较好

你可以自己扩展@Html

或者使用开源的http://www.oschina.net/p/easyuimvc  等等

这样确实可以少一次请求!因为第二种使用了ajax访问后台了,只是easyui封装了一下,你可以浏览器f12监控下网络,然后你就清楚了

刘宏玺 | 园豆:14020 (专家六级) | 2016-05-16 22:37
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册