我有一个自定义控件,具有以下原型.
Type.registerNamespace('Demo');
Demo.CustomTextBox = function(element) {
Demo.CustomTextBox.initializeBase(this, [element]);
}
Demo.CustomTextBox.prototype = {
initialize: function() {
Demo.CustomTextBox.callBaseMethod(this, 'initialize');
this._onblurHandler = Function.createDelegate(this, this._onBlur);
$addHandlers(this.get_element(),
{
'blur': this._onBlur
},
this);
},
dispose: function() {
$clearHandlers(this.get_element());
Demo.CustomTextBox.callBaseMethod(this, 'dispose');
},
_onBlur: function(e) {
if (this.get_element() && !this.get_element().disabled) {
alert(this.get_element().value);
}
}
}
Demo.CustomTextBox.registerClass('Demo.CustomTextBox', Sys.UI.Control);
if (typeof (Sys) !== 'undefined') Sys.Application.notifyScriptLoaded();
Run Code Online (Sandbox Code Playgroud)
如何在_onBlur方法中将回发事件提升到服务器?
干杯
罗汉
所以我终于得到了我的WCF服务设置,并通过ASP.NET AJAX与浏览器交谈.但是我发现当我使用我的数据填充html表时...日期时间格式如下所示:
2009年1月2日星期五15:27:12 GMT-0500(东部标准时间)
在服务器上,我使用的是.NET DateTime格式.我应该使用其他东西并在服务器上进行工作吗?或者有没有通过JavaScript(ASP.NET AJAX或jQuery)在客户端上解决这个问题的简单方法?
我喜欢'2009年1月2日15:27:12'部分.我想我可以使用substring(),但我错过了什么?
更多信息:
我发现返回浏览器的数据是一个有效的JavaScript Date对象.
因此,您可以使用任何本机JavaScript Date函数来处理值或...您可以使用.toString().substring()并修剪掉您不想要的内容.
我一直在asp.net页面按钮点击这个错误...我该如何解决这个问题?
Microsoft JScript运行时错误:Sys.WebForms.PageRequestManagerParserErrorException:无法解析从服务器收到的消息.此错误的常见原因是通过调用Response.Write(),响应过滤器,HttpModules或服务器跟踪来修改响应.详细信息:解析附近时出错
谢谢.
我正在尝试调用Modal Popup,但TargetControl与ModalPopupExtender所在的UpdatePanel不同.
这是代码:
<asp:UpdatePanel ID="UpdatePanel1" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<asp:LinkButton ID="LinkButton1" runat="server">LinkButton</asp:LinkButton>
</ContentTemplate>
</asp:UpdatePanel>
<asp:UpdatePanel ID="UpdatePanel2" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<asp:Panel ID="Panel1" runat="server">
Test
</asp:Panel>
<cc1:ModalPopupExtender ID="Panel1_ModalPopupExtender" runat="server"
DynamicServicePath="" Enabled="True" TargetControlID="LinkButton1" PopupControlID="Panel1">
</cc1:ModalPopupExtender>
</ContentTemplate>
</asp:UpdatePanel>
Run Code Online (Sandbox Code Playgroud)
当我运行页面时出现错误"扩展程序不能在与其扩展的控件不同的UpdatePanel中".显示.
我试图在UpdatePanel2中放置一个Triggers语句,但没有任何变化:
<Triggers>
<asp:AsyncPostBackTrigger ControlID="LinkButton1" EventName="Click" />
</Triggers>
Run Code Online (Sandbox Code Playgroud)
有可能吗?谢谢
我按照Atlas中的示例:使用ModalPopup Extender创建确认,在单击ModalPopup中的OkButton时进行回发(它使用ASP.NET Ajax Control Toolkit中的ModalPopupExtender),但正如我所看到的,系统ASP.NET AJAX中不再存在.WebForms.PostBackAction()(示例适用于Atlas).当我运行它时,在我创建PostBackAction的javascript行中出现"Microsoft JScript运行时错误:预期的对象"错误消息.如何在ASP.NET AJAX中使用它,或者,还有另一种方法可以做到这一点?谢谢
我想在用户点击asp按钮时显示模态弹出窗口.用户必须选择面板的选项.选择的选项的值必须保存到隐藏的输入,然后在asp.net按钮必须做一回发.
我能这样做吗?
谢谢!
我有一个ModalPopupExtender,允许客户应用付款信息.它一直很好用.然后客户要求在ModalPopup上查看到期总额.仅从父控件获取总数并将其传递到ModalPopup控件似乎不是什么大不了的事.似乎没有简单的方法可以做到这一点.
这是我的HTML代码,请记住,此代码包含在UpdatePanel中
<asp:LinkButton ID="lnkMakePayment" runat="server" Visible="true" OnClick="lnkMakePayment_Click" >
<asp:Label ID="lblMakePayment" runat="server" Text="Make Payment"/></asp:LinkButton>
<asp:Button ID="btnDummy" style="display: none;" runat="server"
OnClick="btnDummy_Click" />
<ajaxToolkit:ModalPopupExtender ID="mdlPopupPayment" runat="server"
TargetControlID="btnDummy" PopupControlID="pnlMakePayment"
CancelControlID="popUpCancel" DropShadow="true" BackgroundCssClass="modalBackground">
</ajaxToolkit:ModalPopupExtender>
<asp:Panel ID="pnlMakePayment" runat="server" Style="display: none;"
SkinID="PopUpPanel" class="ContentBoxColor" Width="400px" Height="170px">
<MP1:MakePaymentPopup ID="MakePayment" runat="server" />
<div style="text-align: right; width: 100%; margin-top: 5px;">
<asp:Button ID="popUpCancel" runat="server" Text="Cancel" Width="0px" />
</div>
</asp:Panel>
Run Code Online (Sandbox Code Playgroud)
现在这里是代码隐藏
protected void btnDummy_Click(object sender, EventArgs e) { }
protected void lnkMakePayment_Click(object sender, EventArgs e)
{
mdlPopupPayment.Show();
}
Run Code Online (Sandbox Code Playgroud)
因此,当用户点击付款链接时,ModalPopup工作正常.它甚至会触发父控件侦听的事件,以应用付款信息以及用户在弹出窗口中填写的所有相关付款详细信息.这一切都很好.
由于ModalPopup,我首次尝试发送总数如下:
protected void lnkMakePayment_Click(object …Run Code Online (Sandbox Code Playgroud) 我知道我没有在我的服务器上运行最新版本的ACT.(我最近尝试更新它,它破坏了很多东西.)
所以我想使用一个我从未使用过的控件,我需要查看控件的参考,以确保我正确使用它.但我不知道我正在运行的确切版本.
我在哪里可以找到这些信息?
这是在ASP.Net MVC 3.0中创建Ajax表单的正确方法吗?
@Ajax.BeginForm("ActionName", null, new AjaxOptions
{UpdateTargetId = "dialog-model", InsertionMode = InsertionMode.Replace
}, new { id ="AjaxForm" })
<input class="product-search" id="txtSearchProduct" name="SearchString" type="text" />
<input type="submit" id="AjaxForm" class="button", value="Search"/>
<div id="searchResults">
@Html.Raw((string)ViewBag.TotalList)<br />
<br />
@Html.Raw(ViewData["MarkupSearch"].ToString())
</div>
Run Code Online (Sandbox Code Playgroud)
这可以根据需要完美地工作,但在视图上给出一条额外的线条
**System.Web.Mvc.Html.MvcForm**
Run Code Online (Sandbox Code Playgroud)
任何人都可以帮助我,我如何删除额外的行.
我正在使用Ajax表单在页面中呈现局部视图.
见下面的代码
<script type="text/javascript" src="<%: Url.Content("~/Scripts/jquery-1.7.1.min.js") %>"></script>
<script type="text/javascript" src="<%: Url.Content("~/Scripts/jquery.unobtrusive-ajax.js") %>"></script>
<script type="text/javascript" src="<%: Url.Content("~/Scripts/MicrosoftAjax.js") %>"></script>
<script type="text/javascript" src="<%: Url.Content("~/Scripts/MicrosoftMvcAjax.js") %>"></script>
<form id="aspnetForm" runat="server" style="height: 100%;">
<% using (Ajax.BeginForm("demo", "demo", new AjaxOptions { HttpMethod = "Post", UpdateTargetId = "divToUpdate" }, new { @ID = "AjaxForm" }))
{ %>
<%= Html.DropDownList("Demo", list, new { @id = "id", @class = "dropdown" })%>
<% }%>
<input type="submit" value="Save" />
<div id="divToUpdate">
<% Html.RenderPartial("UserControls/DemoPage"); %>
</div>
<% }%></form>
Run Code Online (Sandbox Code Playgroud)
在这我包括4 js.我有一个带有Form标签的页面,里面有一个prtial视图页面.当我选择下拉列表并单击保存按钮我想要ajax帖子但我发现整个页面正在重新加载.
有什么想法吗?
谢谢
asp.net-ajax ×10
asp.net ×4
ajax ×2
c# ×2
asp.net-mvc ×1
datetime ×1
html ×1
html-helper ×1
javascript ×1
modal-popup ×1
postback ×1