问题标签 [autopostback]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
asp.net - AutoPostBack 不适用于自定义控件
我在 ASP.net 中创建了一个自定义控件,其中包括一个将 AutoPostBack 设置为 true 的 DropDownList。我还为控件附加了一个事件 SelectedIndexChanged。但我发现该事件没有被触发。正常情况下,将 AutoPostBack 设置为 true 的 asp.net DropDownList 将触发该事件。我在 VS2010 中使用 .net 3.5 版本。
这是我的代码: ServerControl1.cs
服务器控制1测试:
谁能告诉我我在这里错过了什么?
ajax - MVC 2.0 Ajax:下拉列表自动提交导致正常回发
我正在尝试将 Ajax 功能添加到我的 MVC 应用程序中。我想要一个异步回发的表单。这是表单代码:
我希望它在下拉列表中选择的值发生变化时自动回发:
但是,当我尝试这个时,程序正常回发,而不是我期望的部分回发。这就是我认为的问题所在: onchange = "this.form.submit();" 在下拉列表中。
我认为这会以某种方式导致正常的回发而不是异步回发。
下面是 MVC 为表单标签生成的 HTML:
我认为使用“this.form.submit()”不会调用“onsubmit”事件处理程序。问题是,我不明白为什么。“onsubmit”不会捕获任何提交表单的事件吗?
更新:我去了jquery,因此:
这导致了许多问题,其中包括:
- 它似乎仍然没有进行异步回发。在我的控制器操作方法中,我有以下代码:“if (Request.IsAjaxRequest())”,它返回 false。
-- 我似乎不能再做模型绑定了。我的路线看起来像:
http://localhost:1986/Interviews/2011-2-25/2011-2/visit
但显然最终被发送的路线是
导致模型绑定不起作用——“visit”应该是一个“mode”参数,但它不存在,所以“mode”默认为“phone”,这会扰乱整个 Applecart。
是导致这种情况的序列化命令吗?我不明白为什么当方法是 POST 时它会将其附加到查询字符串中。
还有其他一些事情——其中,我的操作必须返回一个 ViewResult,所以我怎么可能只返回一个字符串,这就是我使用 ajax 所需要的......但我会推迟这个问题,直到我得到路由/绑定的东西理顺了!
更新:“SetInterviewee”确实是发布到的正确路线,但 routeValues 参数应该从当前视图复制路线值——我想。这是表单的代码:
c# - 自动回发重置我的列表
我想将项目存储到列表中,但每次我按下确认按钮将一个项目添加到列表中时,页面都会刷新并重置我的列表。我如何阻止这种情况发生,同时有一个添加按钮来继续添加到列表中?
列表:
按钮点击:
方法:
asp.net - asp dropdownlist - 服务器端 SelectedIndexChanged 仅在使用鼠标时触发,而不是在通过代码设置选择时触发...有人可以帮忙吗?
在这里发帖的新手,但我已经阅读了很多其他线程并在过去找到了很好的答案!我希望有人知道为什么会发生这种情况...在我的 DDL 上,服务器端 SelectedIndexChanged 事件仅在用户实际单击控件并更改选择时触发...但当我通过 javascript 代码设置选择时不会触发。任何帮助表示赞赏!
这是一些代码...
无论选择是通过 gui 还是由我自己在代码中更改,此客户端 OnChange 代码都会触发:
当我像这样在 js 中设置选定的值时,服务器端 SelectedIndexChanged 事件不会触发:
这是控件的定义(在网格视图中重复):
...不确定这是否重要,但这是服务器端事件:
虽然我认为缺少服务器事件触发导致了我看到的问题,但我想我从来没有真正解释过这个问题是什么!:P 基本上,我有一个由这些级联下拉列表组成的网格——当用户与它们交互时,视图状态保持不变,并且值在回发中保持不变。但是,有时我需要在客户端 js 代码中设置值 - 在这些情况下,值在框中确实会在视觉上发生变化,但在下一个回发操作中它们会被重置:(
非常感谢!!!!
asp.net - 如何避免在 AutoPostBack 上滚动 UpdatePanel?
我在更新面板中有一个 ASP.NET FormView。我通过为 FormView 中的每个项目设置 AutoPostBack=true 来自动保存表单。
这意味着用户可以快速连续单击一些元素并几乎同时触发一些异步回发。
我遇到的问题是,当异步回发尚未完成时,用户能够继续向下滚动表单。浏览器总是滚动回它在第一次回发时所处的位置。
Page.MaintainScrollPositionOnPostback 设置为 False。
我在 ajax 和 jquery 中尝试了各种各样的东西:
- 页面加载
- add_initializeRequest
- add_endRequest
- 文档就绪
- ETC..
但我似乎总是只能访问第一次回发时的滚动 Y。
有没有办法在回发完成时检索当前的滚动 Y,所以我可以停止滚动发生?或者也许可以禁用滚动行为?
谢谢!
更新
感谢@chprpipr,我能够让它工作。这是我的简短解决方案:
主页:
我还尝试调用 EndRequestHandler (必须删除 args.error 检查)以查看它是否在滚动时减少了闪烁,但它没有。值得注意的是,完美的解决方案是完全阻止浏览器尝试滚动 - 现在存在瞬间抖动,这在拥有大量用户群的应用程序中是不可接受的。
(滚动顶部代码不是我的 - 在网上找到的。)
(这是客户端生命周期的有用 MSDN 页面:http: //msdn.microsoft.com/en-us/library/bb386417.aspx)
3 月 7 日更新:
我刚刚找到了一个非常简单的方法来做到这一点:
c# - 占位符函数
我在占位符中有一张桌子。当我单击一个go
按钮时,表格变得可见。但是,当我单击 autopostback 属性设置为 true 的单选按钮列表时,该占位符中的表格消失了。一旦我通过go
按钮使其可见,有什么方法可以使该占位符中的表格永久存在?
如何使占位符内的表格可见?我在用
但它仍然没有出现..我需要使用任何其他属性吗?请帮忙..
c# - RadioButtonList.Selectedvalue 返回一个空字符串
我在我的 c# 代码中定义了数据源,并且我有一个提交按钮,它采用单选按钮列表的值
第一次单击提交时,它返回一个空值。下次我选择一个单选列表并单击提交时,它会返回一个正确的值。诡异的 !!
c# - 自动回发后列表框选择不显示
我知道这不是第一次在这里发布有关此问题的问题,但我还没有设法找到我的问题的答案。
我的页面上有许多列表框:
这些框在某种意义上是链接在一起的,第一个框中的选择用于填充第二个框,因此第四个框。为了从他们那里获取信息,我使用以下代码片段:
问题是 SelectedIndexes all return -1
,这显然不是我需要的。
我一直在疯狂搜索这个问题的解决方案。欢迎提供所有线索或线索。提前致谢!
更新: 也许这对任何人都有任何线索,我的前任(不幸的是,我无法联系到他)实现了这个相当奇怪的代码,它确实有效。或者我应该说某种作品。问题是我们想要一些更可靠的代码,所以我开始重新编写它。
此解决方案不可取,因为它使用硬编码的 html id 获取数据,将来在重新构建和重新组织页面上的内容时可能会发生变化。无论如何,我认为它应该在这里输入,因为这是我重写它的原因。
如上所述,欢迎所有评论!谢谢!
更新 ii(@Deeptechtons 的回答):期望的行为
我有一组三个 ListBox,用于从树形图中导航和做出选择。第一个框 ( ListBox1Val1
) 直接从数据库中填充。第二个 ( ListBox2Val1
) 是空的,直到用户在第一个中选择了他的选项。这样做会导致第一个列表框中所选节点的子节点加载到第二个列表框中。第三个列表框 ( ListBox3Val1
) 也是如此。在第二个框中选择一个节点,然后填充第三个。
c# - 使用 AJAX 3.5 从另一个 DropDownList 填充 DropDownList
我正在使用带有 ajax 工具包的 asp.net 3.5。
问题:我有一个自定义控件,在更新面板中有两个下拉列表。第一个 DDL 具有属性AutoPostBack="true"
,并在选择后填充第二个 DDL。问题是在初始页面加载后第一次选择 DDL,整个页面重新加载。第二次选择第一个 DDL 中的项目时,一切都按预期工作。
我尝试在 UpdatePanel 中添加触发器,但这不会改变结果。
任何帮助表示赞赏。
.ascx:
ascx.cs:
aspx:
注意:在添加 ajax 控件之前,一切都按预期工作。
谢谢!
jquery - 当 autopostback 设置为 true 时,J-query-Styles 在 checkboxlist 的 ListItems 上消失
我正在使用 jquery 来设置复选框列表的样式,问题是,jquery 设置复选框列表的样式,但是当按下 listitem 时,样式丢失了,我猜这是由于 autopostback=true,我无法禁用它,因为我想调用回发以根据所选检查项填充数据列表,是否有任何替代或任何建议。
我正在使用http://www.no-margin-for-errors.com/projects/prettycheckboxes/来设置复选框列表的样式