标签: asp.net-ajax

__DoPostback在执行部分回发时回发禁用控件的值

我有一个表单,为了隔离问题,它有大约十几个纯HTML复选框(不是WebControls),所有这些都被禁用.他们在里面UpdatePanel.

我有一个电话链接

__doPostBack('a-control','my-custom-argument');

根据我提供的第一个参数,页面可以执行完整postback或部分参数.

当我完成时postback,在帖子中没有提交任何复选框值(因为它们被禁用).这是正常的,因而也是期望的行为.

但是,当它执行部分操作时postback,脚本会从我的复选框中收集所有值并提交它们,而不指示哪些值被禁用,这会破坏我的代码.

这很烦人,我希望它表现得一致.反正有没有告诉.NET javascript处理程序以世界其他地方的方式工作,而不是 禁用的 HTML表单元素postback的值?

javascript asp.net ajax webforms asp.net-ajax

6
推荐指数
1
解决办法
2205
查看次数

验证ASP.NET Ajax Extension的安装

有什么方法可以验证服务器上是否安装了这个?我正在运行3.5 .NET Framework.

.net asp.net asp.net-ajax

6
推荐指数
1
解决办法
2740
查看次数

如何在Fiddler中修复此错误:无法建立连接,因为目标计算机主动拒绝它

出于某种原因,我无法在IE 8.0中监控我的asp.net页面对本地主机的请求/响应.

我使用小提琴手,我修改了他的网址 - 通过在分号前添加一个点 -

http://localhost.:52749/JQuery/Chapter16-AJAX/PersonEditor.aspx

我收到此错误:

[Fiddler]连接到localhost.失败.异常文本:无法建立连接,因为目标计算机主动拒绝它:: 1:52749

谢谢

internet-explorer asp.net-ajax fiddler internet-explorer-8

6
推荐指数
1
解决办法
9830
查看次数

jQuery AJAX JSON响应返回键"d"

当我发出jQuery AJAX JSON请求时,它会以"d"属性响应.

为什么是这样?

jquery json get asp.net-ajax

6
推荐指数
1
解决办法
8487
查看次数

js.erb是如何工作的

最近我遇到了一些正在使用的应用程序,js.erb我不确定如何使用它...这是下面的代码.有人可以帮我理解这是如何工作的吗?

routes.rb文件中

map.resources :player_emails
Run Code Online (Sandbox Code Playgroud)

我的控制器player_emails_controller.rb在创建动作中

def create
 @player_email = PlayerEmail.create(params[:player_email])
 if @player_email.save
  @response_txt = "The player has been emailed."
  PlayerEmailsMailer.deliver_pattern_email(@something, @player_email, request.host_with_port)
  @error = false
 else
  @error = true
  @response_txt = "Please make sure you entered your name and a valid email address."
 end
end
Run Code Online (Sandbox Code Playgroud)

然后我有文件 player_emails/create.js.erb

$('#player_email_ind').hide();
$('#player_email_submit').show();
$('#player_response_msg').html("<%= escape_javascript @response_txt %>").fadeIn();
<% unless @error %>
$('#player_email_form')[0].reset();
<% end %>
Run Code Online (Sandbox Code Playgroud)

我知道jquery会发生什么,但我不知道这是怎么做的ajax.它是否只是ajax在有js.erb... 时自动进行调用...有人可以解释它的工作方式以及为什么我不需要在控制器操作中的respond_to告诉它这是format.js

javascript ruby ruby-on-rails asp.net-ajax erb

6
推荐指数
3
解决办法
1万
查看次数

从UpdatePanel以编程方式强制完全回发

我在更新面板中有一个GridView.它是一个继承的asp:GridView,所以它有一个"导出我"的图标就是这样做的.它通过响应带有XLS文件的"导出"单击来工作.问题是,如果您将智能GridView放在更新面板中,ASP.NET认为XLS文件将写入面板,这显然不是我们想要的.为此,我每次都需要一个完整的回复.

我的更新面板都是以编程方式生成的

解决方案在这种精确的情况下不起作用(其中许多在SO的其他地方都有涉及):

  1. 在版本4之前的ASP.NET中,如果您将ID从控件中删除,它甚至可以在更新面板中执行完整的回发.我的问题是仅针对最新最好的.NET 4.

  2. ScriptManager.RegisterPostBackControl看起来很有前途.它确实使控制后期使用正确的面板ID作为事件目标,但是没有其他帮助.

  3. 将PostBackTrigger添加到"更新"面板.我的更新面板是以编程方式生成的,MS声明不支持此更新.我的测试表明他们是对的:我尝试过各种方式,但这不起作用.

  4. 我不太喜欢智能GridView不得不脱离自己的想法,但我试图让它在这些情况下在updatePanel之外添加一个额外的控件.通过客户端javascript重定向客户端单击面板内的导出按钮的想法,以模拟面板外部的该按钮的单击.但是这不起作用,因为我无法将"外部"控件添加到页面中 - 我得到"在DataBind,Init,Load,PreRender或Unload阶段无法修改控件集合".错误.

  5. 使用jQuery将"导出"控件移到面板外部.MS必须有一些他们认为在面板中"控制"的控件列表,并且DOM中的物理位置无关紧要.

有没有人有任何想法如何使这项工作?我知道很多这个应该有用,但那不是一回事.

c# asp.net updatepanel asp.net-ajax

6
推荐指数
1
解决办法
7628
查看次数

当ModelState为InValid时调用Ajax.BeginForm OnFailure

当ModelState在控制器中无效时,我想调用"OnFailure".

在我的LoginView中

 @using (Ajax.BeginForm("Login", new AjaxOptions { HttpMethod = "POST", UpdateTargetId = "Login",InsertionMode = InsertionMode.Replace, OnSuccess = "Success", OnFailure = "onError" }))
 {

 } 
Run Code Online (Sandbox Code Playgroud)

在控制器中

[httpPost]
public ViewResult Login(LoginModel model)
{
   if (ModelState.IsValid)
   {

   }
   else
   { 
     ModelState.AddModelError("login is fail")
   }
   return View("Login",model)
}
Run Code Online (Sandbox Code Playgroud)

所以我想调用onSuccess方法,如果ModelState有效,如果失败,那么只调用OnError方法,显示模型状态的所有错误.

asp.net-mvc asp.net-ajax asp.net-mvc-3

6
推荐指数
2
解决办法
2万
查看次数

CollapsiblePanelExtender设置已折叠

我在AjaxToolkit 3.5中使用CollapsiblePanelExtender来显示/隐藏搜索过滤器选项.

我希望在页面首次加载时扩展CollapsiblePanelExtender!Page.IsPostBack.

之后,我希望折叠CollapsiblePanelExtender,因为这意味着他们要么提交了一些过滤器选项,要么转到搜索结果中的另一个页面.无论哪种情况,我都希望CollapsiblePanelExtender能够进行拼写.

有没有办法可以实现这个目标?

在按钮提交处理程序的代码隐藏中,我尝试添加:

CollapsiblePanelExtenderID.CollapsedSize = 0 CollapsiblePanelExtenderID.Collapsed = true

但这似乎没有用.我还将此添加到处理Paging的lvProducts_PagePropertiesChanging处理程序中.

asp.net-ajax ajaxcontroltoolkit

5
推荐指数
1
解决办法
7228
查看次数

ASP.NET MVC:AJAX ActionLink-定位HTML属性

我有一个Ajax actionlink,它在控制器方法中请求一个字符串.我想将该字符串插入到超链接的属性中.我是否指定了目标id元素的属性字段?

<img id="CHANGE-MY-SRC" src=ViewData["src"] >

<%=Ajax.ActionLink("Change IMG Source","actionChange",new AjaxOptions()         
UpdateTargetId="CHANGE-MY-SRC"})%>
Run Code Online (Sandbox Code Playgroud)
public string actionChange()
{
   ViewData["src"]= "somethingNew";

   return ????????
}
Run Code Online (Sandbox Code Playgroud)

.net asp.net-mvc asp.net-ajax

5
推荐指数
1
解决办法
3万
查看次数

MVC 4 Ajax.Action链接无法正常工作

我正在尝试使用Ajax调用创建一个MVC网站.我没有直接使用jquery的问题,但是当我使用@ Ajax.ActionLink时,我没有得到我想要的结果.这是我的观点:

    <script type="text/javascript">
        function deleteComment(id) {
            $.post(
                "/Role/AjaxTest",
                //{ id: id }, 

                function (data) {
                    $("#testtarget").html(data);               
                });
         }
    </script>


    <script src="@Url.Content("~/Scripts/jquery.unobtrusive-ajax.min.js")" type="text/javascript"></script>
    <h2>TITLE</h2>
    <p>
 @Ajax.ActionLink("Ajax Test", "AjaxTest", "Role", new AjaxOptions{UpdateTargetId="testtarget",HttpMethod = "Get" , InsertionMode = InsertionMode.Replace }) 
    </p>
    <table>    
    @foreach (var item in Model) {
        <tr>
            <td>
                @Html.DisplayFor(modelItem => item.RoleName)
            </td>
            <td>
              <a onclick="deleteComment('@item.RoleId'); return false;" href="#">Delete</a>
                @Html.ActionLink("Delete", "Delete", new { id=item.RoleId })

            </td>
        </tr>
    }
    </table>
    <div id="testtarget">Test Div</div>
Run Code Online (Sandbox Code Playgroud)

这是我的Controler数据:

public string AjaxTest()
{
    return "Some random text"; …
Run Code Online (Sandbox Code Playgroud)

c# asp.net-ajax html.actionlink razor asp.net-mvc-4

5
推荐指数
1
解决办法
1万
查看次数