小编dan*_*tch的帖子

ViewModel MVC 3

我是MVC的新手.我正在阅读以下 教程.

我在它要求以下代码的部分

[HttpPost]
public ViewResult Edit(UserModel um) 
{

  if (!TryUpdateModel(um)) 
  {
    ViewModel.updateError = "Update Failure";
    return View(um);
  }

  // ToDo: add persistent to DB.
  _usrs.Update(um);
  return View("Details", um);
}
Run Code Online (Sandbox Code Playgroud)

当我尝试使用ViewModel时收到错误:

"ViewModel的名称在当前上下文中不存在."

Intellisense不会将ViewModel显示为选项.

c# asp.net-mvc-3

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

更改datepicker的语言

我正在尝试构建一个更改日期选择器语言的函数

$(function(){
txtDate = $("#txtDate");
var minDate = new Date(2011, 1 - 1, 15);
var maxDate = new Date(2011, 6 - 1, 15);
txtDate.date
txtDate.dateEntry({
            defaultDate: maxDate,
            minDate: minDate,
            maxDate: maxDate,
            spinnerImage: ''
        });
txtDate.datepicker({
            minDate: minDate,
            maxDate: maxDate
        });

txtDate.datepicker("setDate", maxDate);
dateLanguageChange();
});


var dateLanguageChange = function () {
        $("#txtDate").datepicker("destroy").datepicker($.datepicker.regional["fr"]);
    };
Run Code Online (Sandbox Code Playgroud)

HTML:

<div class="form-row">
    <label>@Html.Resource("Date")</label>
    <input id="txtDate" type="text" class="date-box" />
</div>
Run Code Online (Sandbox Code Playgroud)

jquery

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

在客户端筛选大型列表

我试图用文本键盘过滤大量的表格数据列表.

在过去,我正在处理更小的列表并使用如下解决方案

http://kilianvalkhof.com/2010/javascript/how-to-build-a-fast-simple-list-filter-with-jquery/

http://papermashup.com/jquery-list-filtering/

使用这些内容,您可以使用过滤器的内容遍历列表,并根据是否显示单个显示来切换各个显示.

我试图实现这个过滤而不使用任何额外的插件(除了jquery附带的任何东西)

我也试图在客户端保留所有过滤功能.

这是我的标记

<div>
  <table>
     <tbody>
         <tr class="mm-list-control-item" data-code="WHLO-AM">
           <td> WHLO-AM </td>
           <td>Rubber City</td>
           <td>Classic Hits</td>
         </tr>           
         <tr class="mm-list-control-item" data-code="WHLO-AM">
           <td> WHLO-AM </td>
           <td>Rubber City</td>
           <td>Classic Hits</td>
         </tr>
         <tr class="mm-list-control-item" data-code="WKDD-FM">
           <td> WKDD-FM </td>
           <td>Rubber City</td>
           <td>Classic Hits</td>
         </tr>
         <tr class="mm-list-control-item" data-code="WNIR-FM">
           <td> WNIR-FM </td>
           <td>Rubber City</td>
           <td>Classic Hits</td>
         </tr>
     <tbody>
  <table>
</div>
Run Code Online (Sandbox Code Playgroud)

我正在过滤掉数据代码内容.我的列表大小也大约是2000项(tr).

更新:我收到了投票,所以让我澄清一下.我不是在寻找大量的代码.我只是需要一些想法,如果有更好的方法来构建这个过滤器,那么我正在这样做.

jquery

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

使用嵌套布局在一个部分中呈现所有Javascript代码

我的代码编译并运行没有错误; 但是,它没有按照我的预期呈现.

理论:

我想使用多个布局页面.

"基础"布局应仅包括解决方案正在使用的样式和javascript文件.

另一个布局应该有html内容或包装器.这种布局目前似乎是多余的,但是我的上级向我保证它会带来未来的伟大.例如具有多个标题或在某些页面上没有页眉或页脚的能力.主要的是拥有多个ContentLayouts但只有一个常见的BaseLayout

代码:

_BaseLayout

<html>
   <head>
       <link href="@Url.Content("~/Content/css/main.css")" rel="stylesheet" type="text/css" />
       <script type="text/javascript" src="@Url.Content("~/Scripts/common.js")"></script>
       @RenderSection("JavaScript", false)
       @RenderSection("Css", false)
   </head>
   <body>
       @RenderBody()
   </body>
</html>
Run Code Online (Sandbox Code Playgroud)

_ContentLayout

 @{
    Layout = "~/Views/Shared/_BaseLayout.cshtml";
 }

 @RenderSection("JavaScript", false)
 @RenderSection("Css", false)

 <div class="page">
     <section class="wrapper">
       @RenderBody()
     </section>
 </div>
Run Code Online (Sandbox Code Playgroud)

View.cshtml

 @{
     Layout = "~/Views/Shared/_ContentLayout.cshtml";
 }

 @section JavaScript
 {
      <script type="text/javascript">
    (function ($) {
        $(function () {
            //do stuff;
        });
    } (jQuery));
</script>
 }

 <div>
      //html content
 </div>
Run Code Online (Sandbox Code Playgroud)

就像我之前说过的那样有效.问题是当我查看页面源时,视图中的脚本在_ContentLayout中呈现,因此落在指定的脚本区域之外.我可以将脚本代码"踢"到下一个布局吗?这将允许所有脚本代码位于同一区域.

javascript html5 razor asp.net-mvc-3

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

将网页图像添加到 pdf

我正在尝试使用 iTextSharp 将网络图像添加到 pdf 中

我正在尝试使用与本地图像相同的代码

using (var pdfDoc = new Document()) 
using (var pdfWriter = PdfWriter.GetInstance(pdfDoc, pdfStream)) { 
    pdfDoc.Open();
    Image tif = Image.GetInstance("www.myimage.com");
    pdfDoc.Add(tif);
    pdfDoc.Close();
}
Run Code Online (Sandbox Code Playgroud)

c# itext

5
推荐指数
2
解决办法
3791
查看次数

向对象添加功能

我有以下代码

var PROMO = PROMO || {};

PROMO.Base = (function () {
  var _self = this;

  var Init = function () {
    WireEvents();
  };

  var WireEvents = function () {
   //wire up events
  };

} ());
Run Code Online (Sandbox Code Playgroud)

在同一个文件中,我有代码来调用上面的函数

我试图达到一个终点,我可以使用以下代码

 $(document).ready(function () {
    PROMO.Base.Init();
 });
Run Code Online (Sandbox Code Playgroud)

这给出了错误

Cannot call method 'Init' of undefined
Run Code Online (Sandbox Code Playgroud)

现在我知道有很多方法可以编写javascript,但是在这种情况下我希望能够以上面显示的方式调用我的函数,或者至少调用Init方法.

javascript jquery

5
推荐指数
2
解决办法
222
查看次数

使用不引人注目的javascript从单个事件调用多个函数

我有一个输入元素

<select id="test"></select>
Run Code Online (Sandbox Code Playgroud)

在改变我想要调用多个功能

$('#test').change(function1, function2);
Run Code Online (Sandbox Code Playgroud)

现在的功能只是现在的警报

var function1 = function(){alert('a');};
var function2 = function(){alert('b');};
Run Code Online (Sandbox Code Playgroud)

只调用第二个函数.我知道这是因为警报和刹车点.我知道纠正这种方法的一种方法是从另一个函数调用function1和function2,但我想避免这种情况.

javascript jquery unobtrusive-javascript

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

枚举查看DropDown MVC3

可能重复:
如何从ASP.NET MVC中的枚举创建下拉列表?

我知道有几篇文章涉及MVC3的下拉.我找不到能解决我具体问题的方法.

我试图将我的Enum的所有选项放入View中的下拉列表中.

这是我的Enum/Class:

namespace ColoringBook 
public enum Colors
{
    Red = 0,
    Blue = 1,
    Green = 2,
    Yellow = 3
}

public class Drawing
{
    private Colors myColor;

    public Colors MyColor
    {
        get { return this.myColor; }
        set { this.myColor= value; }
    }

    public Drawing(Colors color)
    {
        this.myColor = color;
    }
}
Run Code Online (Sandbox Code Playgroud)

我的观点如下:

@model ColoringBook.Drawing


@{
Title = "Create";
}

<h2>Create</h2>

@using (Html.BeginForm()) 
{
@Html.ValidationSummary(true)
<fieldset>
    <legend>Color</legend>


    <div class="editor-label">
        @Html.LabelFor(model => model.Color)
    </div>
    <div class="editor-field">
        //not …
Run Code Online (Sandbox Code Playgroud)

asp.net-mvc-3

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

手风琴活动没有开火

我有警告应该触发'activate'和'beforeActivate'事件.这些都不会发生.

使用Javascript

$(function () {
  $(".accordion").accordion({
    collapsible: false,
    active: true,
    activate: function (event, ui) { alert("activate"); },
    beforeActivate: function (event, ui) { alert("before activate"); }
  });
});
Run Code Online (Sandbox Code Playgroud)

HTML

<div>
  <ul>
    <li>0</li>
    <div class="accordion">
        <li>
            <h3><a href="#">First</a></h3>
            <div>
                <ul>
                    <li>1</li>
                    <li>2</li>
                </ul>
            </div>
        </li>
        <li>
            <h3><a href="#">Second</a></h3>
            <div>
                <ul>
                    <li>3</li>
                    <li>4</li>
                </ul>
            </div>
        </li>
    </div>
  </ul>
</div>
Run Code Online (Sandbox Code Playgroud)

我知道我在ul的一侧嵌套div中的错误html.

jquery-ui accordion

4
推荐指数
1
解决办法
5587
查看次数

首次访问后更改主页

现在我的项目默认为Home/Index作为我的网站开始页面.我想这样做,所以当有人第一次来到网站时,他们会去Home/FirstTime以及随后的所有时间他们返回网站他们会回到主页/索引

我在App_Start文件夹中的RouteConfig.cs中有此代码

public class RouteConfig
{
    public static void RegisterRoutes(RouteCollection routes)
    {

        routes.MapRoute(
            name: "Default",
            url: "{controller}/{action}/{id}",
            defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }

        );

    }
}
Run Code Online (Sandbox Code Playgroud)

我猜我需要为Home/FirstTime添加一条路线,但我不知道如何将这些信息存储在他们已经到过的网站上.

asp.net asp.net-mvc-4

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