chin 发表于 2019-7-25 17:52:00

flexgrid选择和编辑的数据如何不用js直接和后台进行交互

平台:asp.net core2.1flexgrid选择和编辑的数据能不能和普通的控件一样不通过js,直接和后台进行交互?

如果能实现的话,跪求实现的例子。

Richard.Ma 发表于 2019-7-26 09:14:10

你好,你说的这个无法实现,这个是由于技术框架本身决定的

按照你说的需求,其实用asp.net Webform更合适,页面控件可以和后台直接交互

chin 发表于 2019-7-26 09:33:41

谢谢你的回答,也就是说asp.net mvc的平台下flexgrid绑定的list的值只能通过js取得传给后台,而不能直接跟后台进行交互的意思吗?

Richard.Ma 发表于 2019-7-26 11:26:53

确实是这样的,你可以尝试看看开发包中的webform 演示程序

chin 发表于 2019-7-26 13:16:45

我们项目决定用的平台是asp.net mvc:L,为什么Input或combobox等控件能通过for,asp-for传递到后台,flexgrid没有类似的属性吗?

chin 发表于 2019-7-26 15:07:29

追问:flexgrid能不能不直接从js取数据,从后台取选择或编辑的数据?

Richard.Ma 发表于 2019-7-26 15:13:42

需要先和你确认使用的是asp.net core mvc还是asp.net mvc,
另外你现在要解决的具体问题是什么,然后我帮你验证
https://help.grapecity.com/componentone/NetHelp/c1mvccore/webframe.html#FlexGrid.html
这个是asp.net core mvc的文档,如果您刚开始了解控件的话,建议参考文档
以及开发包中的demo示例代码: 文档\ComponentOne Samples

chin 发表于 2019-7-26 16:06:33

本帖最后由 chin 于 2019-7-26 16:12 编辑

框架是asp.net core mvc。
flexgrid选择行的数据能不能不用js的JSON而是直接用form的post形式传到后台?

以下是后台经过js的JSON来获取的方法:<form>
<c1-flex-grid auto-generate-columns="false" id="Grid"
selection-mode="ListBox"
allow-sorting="false">
<c1-flex-grid-column binding="Id"></c1-flex-grid-column>
<c1-flex-grid-column binding="Group"></c1-flex-grid-column>
<c1-flex-grid-column binding="Name"></c1-flex-grid-column>
<c1-flex-grid-column binding="Flag"></c1-flex-grid-column>
<c1-flex-grid-column binding="ComboboxList">
<c1-data-map display-member-path="Name" selected-value-path="Code">
<c1-items-source source-collection="comboboxList"></c1-items-source>
</c1-data-map>
</c1-flex-grid-column>
<c1-items-source source-collection="@list" />
</c1-flex-grid>
<button id="btn1" type="button" class="btn btn-primary btn-sm">post</button>
</form>


@section Scripts{
<script type="text/javascript">
$(document).ready(function () {
var grid = wijmo.Control.getControl("#Grid");

var list = []
$('#btn1').on('click', function () {
var $this = $(this);
var list = [];
var test = "";
var rows = grid.rows;
for (var i = 0; i < rows.length; i++) {
if (rows.isSelected) {
list.push(grid.rows.dataItem);
}
}
$.ajax({
type: "POST",
contentType: "application/json",
url: "/Test/Index2",
data: JSON.stringify(list),
dataType: "json",
success: function (result) {
},
error: function (err) {
}
});
return false;
});
});
</script>public IActionResult Index1()
      {
            MasterService service = new MasterService();
            ViewBag.ComboboxList = service.QueryMasterList();
            ViewBag.List = DataService.QueryDataList();
            return View();
      }
      
      
      public IActionResult Index2(IList<DataEntity> list)
      {
            return View(list);
      }   
            

Richard.Ma 发表于 2019-7-26 18:22:06

本帖最后由 Richard.Ma 于 2019-7-26 18:23 编辑

抱歉,本身不支持,如果确实要用form提交只能通过二次开发来实现,但是并不是一个好的方式


chin 发表于 2019-7-29 16:31:25

谢谢你的回答,顺便再追问一下,如果想在flexgrid的cell里添加按钮或链接的话,也只能通过js来添加吗?
页: [1] 2
查看完整版本: flexgrid选择和编辑的数据如何不用js直接和后台进行交互