2012-06-05 18 views
0

因此,我对网络编程相当陌生,并且我只理解基本语法,没有太多高级功能或任何东西。另外,我真的没有使用Javascript的经验,但是我很了解C++使用经验的语法和一般编程知识,所以我可以弄明白。使用ASP.NET显示和更新HTML表格

这是我正在做的。我有一个Web服务返回一个DataSet变量/数组/数据结构。由于这是一个.NET类型,我认为用ASP.NET访问这个服务也是最容易的。我可以从Web服务读取数据并通过指定表,行和列来显示各个元素,所以我知道数据在那里。但是,我想将结果显示在表格中。我确实得到了这个工作(但是我现在还没有代码),但是只有在第一次加载页面时才有效。我访问的Web服务方法执行SQL查询,我希望能够将查询字符串键入到文本框中,将其提交给服务器,并将其更新/填充/创建一个表。我确信这很简单,但就像我说的,我对网络编程只是一个新手。

我记得在w3的教程网站上看到一个页面,该页面在HTML表格中使用了“网页”语法,并使用foreach循环遍历,创建新行,输入数据等。我明白,但我不知道如何完成与“Web窗体”类型的项目类似的东西(我因使用Visual Studio或记事本++而停滞不前,因为我在我的工作PC上这样做,我认为.cshtml文件使用了不同的编辑器)

我正在考虑某种形式的内联代码,或者从C#代码(在代码隐藏文件内)修改HTML元素,或者在HTML元素内部使用内联代码。我不确定如何在ASP.NET中编写事件处理程序,您是否可以使用HTML表单/按钮来调用ASP.NET函数(同样,它位于代码隐藏文件中)?另外,如果有类似的问题,我很抱歉,因为我刚刚在上周学到了所有这些网络开发工具,所以我有点疯狂!顺便说一句,有人可以解释什么时候ASP.NET元素返回到浏览器?服务器是否基本上将它们转换为基本的HTML元素?我正在使用的应用程序将用于移动设备,因此客户端应该尽可能简单。

谢谢。

回答

0

您应该可以在ASP.NET应用程序中执行您所期望的操作,而不会造成太多的麻烦。您应该能够将控件添加到您的页面,然后在回发中调用Web服务。

是否有原因结果必须绑定在内联代码?如果不是为什么不使用ASP.NET gridviewData Repeater Control。您可以将控件添加到网页,然后在从Web服务检索到值后,将它们绑定在代码后面。

使用gridview,你应该能够设置你想要可见的列,设置数据源,然后调用数据绑定。呈现给浏览器时,它将显示为HTML表格。

随着中继器控制,你将不得不做更多的工作来设置项目模板,但它也应该为你工作。

+0

中继器控件看起来是最可定制的,我通常喜欢控制我的代码,所以我可能会使用它。我注意到ref中有一个“onDataBinding”事件。是否有必要使用它来更新表(触发重载,AJAX等?)还是有一种更新方法在DataBind方法之后被自动或显式调用? 最终会有一个选项从表格中选择一个项目并单击另一个按钮。在那一刻,将会有逻辑根据所选项目执行INSERT。这听起来像中继器使之成为可能吗? –

+0

中继器控制绝对允许你更多的自由。您也可以查看DataList控件,看它是否可以为您提供所需的功能。你当然应该能够用上述两种控制方法中的任何一种来完成上面所描述的内容。您可以使用服务器端事件绑定代码,如上所述,或者您可以在项目模板中包含诸如<%#Container.DataItem(“title”)%>之类的内容以绑定到您的代码中的列名“title”数据集。如果你谷歌它可以找到很多很好的例子来说明如何使用这些控件。 – bechbd