如何在ASP.NET MVC操作中获取引用者URL?我在调用操作之前尝试重定向回页面.
在我的Web应用程序中,左侧的表中有用户列表,右侧有用户详细信息窗格.当管理员单击表中的用户时,其详细信息应显示在右侧.
我左边有一个UserListView和UserRowView,右边有一个UserDetailView.事情很有效,但我有一种奇怪的行为.如果我单击左侧的某些用户,然后单击其中一个用户的删除,我会为所有已显示的用户提供连续的javascript确认框.
看起来所有以前显示的视图的事件绑定都没有被删除,这似乎是正常的.我不应该每次在UserRowView上都做一个新的UserDetailView?我应该维护一个视图并更改其参考模型吗?我应该跟踪当前视图并在创建新视图之前将其删除吗?我有点迷茫,任何想法都会受到欢迎.谢谢 !
这是左视图的代码(行显示,单击事件,右视图创建)
window.UserRowView = Backbone.View.extend({
tagName : "tr",
events : {
"click" : "click",
},
render : function() {
$(this.el).html(ich.bbViewUserTr(this.model.toJSON()));
return this;
},
click : function() {
var view = new UserDetailView({model:this.model})
view.render()
}
})
Run Code Online (Sandbox Code Playgroud)
和右视图的代码(删除按钮)
window.UserDetailView = Backbone.View.extend({
el : $("#bbBoxUserDetail"),
events : {
"click .delete" : "deleteUser"
},
initialize : function() {
this.model.bind('destroy', function(){this.el.hide()}, this);
},
render : function() {
this.el.html(ich.bbViewUserDetail(this.model.toJSON()));
this.el.show();
},
deleteUser : function() {
if (confirm("Really delete user " + this.model.get("login") + …Run Code Online (Sandbox Code Playgroud) 我正在尝试将列表导出为CSV文件.我完成了所有工作,我想写入文件到响应流.这没有任何作用.
这是我的代码:
从页面调用方法.
$('#btn_export').click(function () {
$.post('NewsLetter/Export');
});
Run Code Online (Sandbox Code Playgroud)
控制器中的代码如下:
[HttpPost]
public void Export()
{
try
{
var filter = Session[FilterSessionKey] != null ? Session[FilterSessionKey] as SubscriberFilter : new SubscriberFilter();
var predicate = _subscriberService.BuildPredicate(filter);
var compiledPredicate = predicate.Compile();
var filterRecords = _subscriberService.GetSubscribersInGroup().Where(x => !x.IsDeleted).AsEnumerable().Where(compiledPredicate).GroupBy(s => s.Subscriber.EmailAddress).OrderBy(x => x.Key);
ExportAsCSV(filterRecords);
}
catch (Exception exception)
{
Logger.WriteLog(LogLevel.Error, exception);
}
}
private void ExportAsCSV(IEnumerable<IGrouping<String, SubscriberInGroup>> filterRecords)
{
var sw = new StringWriter();
//write the header
sw.WriteLine(String.Format("{0},{1},{2},{3}", CMSMessages.EmailAddress, CMSMessages.Gender, CMSMessages.FirstName, CMSMessages.LastName));
//write every subscriber to …Run Code Online (Sandbox Code Playgroud) 我对Web应用程序开发非常陌生,我认为我会从最近的技术开始,所以我正在努力学习asp.net以及MVC框架.对于MVC专业人士来说,这可能是一个非常简单的问题.
我的问题是部分视图是否应该有关联的操作,如果是,那么只要普通页面RenderPartial()在局部视图上使用,是否会调用此操作?
我听说在视图中使用@foreach是禁忌.意思是,视图中不应该有任何逻辑.什么是@foreach逻辑应该在哪里的最佳实践?
@foreach..
Run Code Online (Sandbox Code Playgroud) 我刚开始和Laravel合作.我需要重写几年前制作的整个系统,使用Laravel 4作为基础框架.在我的旧系统中,我使用一个带有一些常量声明的constant.php文件,以及一个包含大量数组的globals.php文件(例如,类别状态,事件类型,lang等).通过这样做,我可以使用类似的东西
foreach ( $langs as $code => $domain ) {
// Some stuff
}
Run Code Online (Sandbox Code Playgroud)
我应用中的任何地方.
我的问题是,如何以所谓的"laravel方式"存储该信息.我尝试使用某种对象来存储此信息,将其设置为服务并为其创建一个外观:
应用程序/库/项目/ Constants.php
namespace PJ;
class Constants {
public static $langs = [
'es' => 'www.domain.es',
'en' => 'www.domain.us',
'uk' => 'www.domain.uk',
'br' => 'www.domain.br',
'it' => 'www.domain.it',
'de' => 'www.domain.de',
'fr' => 'www.domain.fr'
];
}
Run Code Online (Sandbox Code Playgroud)
应用程序/库/项目/ ConstantsServiceProvider.php
namespace PJ;
use Illuminate\Support\ServiceProvider;
class ConstantsServiceProvider extends ServiceProvider {
public function register() {
$this->app->singleton('PJConstants', function() {
return new Constants;
});
}
}
Run Code Online (Sandbox Code Playgroud)
应用程序/库/项目/ ConstantsFacade.php
namespace PJ; …Run Code Online (Sandbox Code Playgroud) 菜鸟问题.我有一个参数传递给创建视图.我需要设置一个默认值的字段名称.@ Html.EditorFor(model => model.Id)我需要设置名为Id的输入字段,其默认值通过actionlink传递给视图.
那么,这个输入字段 - @ Html.EditorFor(model => model.Id) - 如何设置为默认值.
以下工作会怎样?数字5是参数,我传入文本字段以设置默认值.
@Html.EditorFor(c => c.PropertyName, new { text = "5"; })Run Code Online (Sandbox Code Playgroud) 无论如何,有一个图像充当ajax actionlink?我只能使用文本来使用它.谢谢你的帮助!
假设您需要定义一个类,它所做的就是保持常量.
public static final String SOME_CONST = "SOME_VALUE";
Run Code Online (Sandbox Code Playgroud)
这样做的首选方式是什么?
我应该使用哪一个?为什么?
枚举 - 我不会使用枚举,我不会枚举任何东西,只是收集一些与任何方式无关的常量.
接口 - 我不打算将任何类设置为实现接口的类.只想使用接口调用常量,如下所示:ISomeInterface.SOME_CONST.
如何在里面访问JavaScript值@URL.Action()?就像是:
<script type="text/javascript">
function name(myjavascriptID)
{
jQuery("#list_d").jqGrid('setGridParam', { url: '@URL.Action("download file", "download", new { id = <myjavascriptID> })', page: 1 });
}
</script>
Run Code Online (Sandbox Code Playgroud) asp.net-mvc ×7
c# ×2
javascript ×2
razor ×2
ajax ×1
backbone.js ×1
csv ×1
global-state ×1
java ×1
jquery ×1
laravel ×1
laravel-4 ×1
php ×1
redirect ×1
referrer ×1
templates ×1