小编Sna*_*yes的帖子

从 ajax 发送空数组在 ASP.NET MVC 操作中给出了 null 参数

我有一个简单的 ajax 调用,例如:

$.ajax({
   url: ... ,
   data: { anArray: [] },
   ...
});
Run Code Online (Sandbox Code Playgroud)

和控制器的动作:

public ActionResult Test(int[] anArray) {
   ...
}
Run Code Online (Sandbox Code Playgroud)

似乎anArray是 null 而不是空数组。

我也尝试过

  • List<int>
  • string[]
  • object[]

但对于上述所有内容,我看到anArray参数为空。

我读过类似的问题,但有与模型参数相关的问题,我这里没有模型。

如何在控制器的操作中接收空数组?我应该怎么办 ?

c# asp.net-mvc jquery

7
推荐指数
1
解决办法
2319
查看次数

设置为buttonset()后禁用单选按钮

我有3个单选按钮

<div id="test">
<input type="radio" id="time1" name="radio" value="1" /><label for="time1">Test 1</label>
<input type="radio" id="time2" name="radio" value="2" /><label for="time2">Test 2</label>
<input type="radio" id="time3" name="radio" value="3" /><label for="time3">Test 3</label>
</div>
Run Code Online (Sandbox Code Playgroud)

在jquery

$("#test").buttonset();
Run Code Online (Sandbox Code Playgroud)

在那之后,我想禁用它们(当然,禁用被放在一个if声明中)

$("#test input").attr("disabled", true);  //or
$("#test input").prop("disabled", true);
Run Code Online (Sandbox Code Playgroud)

但它不起作用,按钮仍然启用.

javascript jquery jquery-ui

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

如何使用jquery删除外部div

好的,我有这个结构

 <div class="field_with_errors">
    <input id="count" name="count" size="2" type="text" />
    <label class="message" for="count_for">Required</label>
 </div>
Run Code Online (Sandbox Code Playgroud)

如何删除外部field_with_errors和内部消息,只留下输入标记

如果我做

$("#count").closest(".field_with_errors").remove()
Run Code Online (Sandbox Code Playgroud)

它删除了整个div

我可以先移除内部.message但不确定如何移除外部

$("#count").closest(".field_with_errors").find('.message').remove()
Run Code Online (Sandbox Code Playgroud)

有任何想法吗

jquery

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

使用或继承ASP.NET MVC中的DisplayAttribute创建自定义显示属性

我想DisplayAttributeName财产一起使用.

问题是类是sealed,我不能继承它来覆盖一些方法.

我为什么要这个?

我想传递一些代码,以便将字符串转换为Name属性.并为语言添加一个属性.

就像是:

[MyDisplay(Code = TRANSLATION_CODE, Language = "FR-FR")]
public string Fr { get; set; }
Run Code Online (Sandbox Code Playgroud)

在MyDisplayAttribute中,我想这样做:

public class MyDisplayAttribute: DisplayAttribute // it won't work the inherits
{
     public int Code { get; set; }
     public string Language { get; set; }

    // somewhere, I don't know what method
    // I want to assing `Name = GetTranslation(Code, Language);`
}
Run Code Online (Sandbox Code Playgroud)

还有另一种方法吗?


UPDATE

我也尝试了这个:

public class MyDisplayAttribute : DisplayNameAttribute
   {
      private int …
Run Code Online (Sandbox Code Playgroud)

c# asp.net-mvc

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

角料不起作用的徽章

我将角度材料升级到6.0.2并且我想使用badge功能但它没有显示在我的页面中.包配置看起来像:

{
    "name": "my.angular",
    "version": "0.0.0",
    "license": "MIT",
    "scripts": {
        "ng": "ng",
        "start": "ng serve",
        "build": "ng build --prod",
        "test": "ng test",
        "lint": "ng lint",
        "e2e": "ng e2e"
    },
    "private": true,
    "dependencies": {
        "@angular/animations": "^6.0.2",
        "@angular/cdk": "^6.0.2",
        "@angular/common": "^6.0.2",
        "@angular/compiler": "^6.0.2",
        "@angular/core": "^6.0.2",
        "@angular/flex-layout": "^5.0.0-beta.14",
        "@angular/forms": "^6.0.2",
        "@angular/http": "^6.0.2",
        "@angular/material": "^6.0.2",
        "@angular/platform-browser": "^6.0.2",
        "@angular/platform-browser-dynamic": "^6.0.2",
        "@angular/router": "^6.0.2",
        "core-js": "^2.4.1",
        "hammerjs": "^2.0.8",
        "ngx-cookie-service": "^1.0.10",
        "rxjs": "^6.1.0",
        "rxjs-compat": "^6.1.0",
        "zone.js": "^0.8.19"
    },
    "devDependencies": {
        "@angular-devkit/build-angular": "^0.6.3",
        "@angular/cli": "^6.0.2",
        "@angular/compiler-cli": "^6.0.2", …
Run Code Online (Sandbox Code Playgroud)

angular-material angular

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

如果ASP.NET MVC 3中有空格,为什么文件头不完整?

我今天遇到了一个问题,对我来说很奇怪,但也许不是C#领域的专家.

我有一个Download像这样的函数(一段代码!)

public void Download (string path){
  HttpContext.Current.Response.ContentType = "application/octet-stream";

  try {
           ....//process a 'filePath' variable using the 'path' parameter

               using ( FileStream sourceFile = new FileStream( filePath, FileMode.Open ) ) {
                 ...

                  HttpContext.Current.Response.AddHeader( "Content-Disposition", "attachment; filename=" + Path.GetFileName( filePath ) );

                  HttpContext.Current.Response.AddHeader( "Content-Length", fileSize.ToString() );

                  HttpContext.Current.Response.BinaryWrite( getContent );
               }
           ...

}
Run Code Online (Sandbox Code Playgroud)

如果提到并存储在path/ filePathvariable中的文件名包含空格

PR SimpleTest.xls

然后下载框包含文件名,就像PR没有任何额外的.

在此输入图像描述

如果该文件名没有空格(如PR_SimpleTest.xls),则标题随附,PR_SimpleTest.xls我可以下载(显示完整的文件名及其扩展名).

在文件名包含空格的情况下,有解决问题的解决方案吗?

c# asp.net header asp.net-mvc-3

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

可以设置样式选择元素,以便在下拉"关闭"时显示所选选项的样式?

鉴于这个简单的HTML,

<select id="ddl">
    <option style="background:#0f0">a</option>       
    <option style="background:#f00;">b</option>   
    <option>c</option>
</select>
Run Code Online (Sandbox Code Playgroud)

(http://jsfiddle.net/DxK47/)您可以看到每个选项都有自己的背景颜色.

不幸的是,当选择任何选项(导致下拉列表"关闭")时,背景保持白色(或者无论页面默认是什么).

是否可以在选择完成后在下拉列表中显示所选项目的背景(理想情况下不使用javascript)

html javascript css jquery

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

使用JQuery创建图像的实时预览(在上传之前)

我想在使用JQuery将其上载到服务器上之前创建图像预览.

我的代码,js代码:

$(function(){
    Test = {
        UpdatePreview: function(obj){
          // if IE < 10 doesn't support FileReader
          if(!window.FileReader){
             // don't know how to proceed to assign src to image tag
          } else {
             var reader = new FileReader();
             var target = null;

             reader.onload = function(e) {
              target =  e.target || e.srcElement;
               $("img").prop("src", target.result);
             };
              reader.readAsDataURL(obj.files[0]);
          }
        }
    };
});
Run Code Online (Sandbox Code Playgroud)

我的HTML:

    <input type='file' name='browse' onchange='Test.UpdatePreview(this)'  />
<br/><br/>
   <img src="#" alt="test" width="128" height="128" />
Run Code Online (Sandbox Code Playgroud)

见jsfiddle:http://jsfiddle.net/aAuMU/

之后onload,我看到了图像的src(使用谷歌控制台应用程序),它看起来像:

data:image/jpeg;base64,/9j/4AAQSkZJRgABAgAAAQABAAD//gAEKgD/4gv4SUNDX1BST0ZJTEUAAQEAAAvoAAAAAAIAAABtbnRyUkdCIFhZWiAH2QADABsA...

如果我使用IE作为浏览器,这是一种获取javascript图像基础并分配给图像的方法? …

javascript jquery

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

使用ASP.NET MVC3中的路由在URL末尾添加查询字符串

我想使用路由将查询字符串添加到URL的末尾.我如何在Global.asax中执行此操作?

routes.MapRoute(
    "Detail",
    "{controller}/{action}/{id}/{name}",
    new
    {
        action = "Detail",
        name = UrlParameter.Optional,
        // it is possible to add here query string(s) ?
    },
    new[] { "MyProject.Controllers" }
);
Run Code Online (Sandbox Code Playgroud)

例如,实际网址包含:

www.mysite.com/MyController/Detail/4/MyValue
Run Code Online (Sandbox Code Playgroud)

但我想生成类似的东西:

www.mysite.com/MyController/Detail/4/MyValue?ref=test&other=something
Run Code Online (Sandbox Code Playgroud)

c# asp.net-mvc-3

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

使用LINQ以按C#中匹配的子列表值选择列表

我有一个叫做的课Item:

public sealed class Item 
{
    public int Id { get; set; }
    public string Name { get; set; }
    public List<Language> Languages { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

public sealed class Language 
{
   public int Id { get; set; }
   public string Code { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

我想得到一个Item基于匹配语言的列表.

所以:

string currentLangCode = "EN";
List<Item> items = GetListOfItems();

// that's not correct, I need an advice here
var query = from i in items
          where …
Run Code Online (Sandbox Code Playgroud)

c# linq

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