小编Joe*_*oel的帖子

JqueryUI自动完成错误:未捕获TypeError:对象#<Object>的属性"结果"不是函数

我环顾四周,无法找到问题的答案.我没有多少使用过jquery UI,但我正在尝试使用这个博客条目jQuery UI Autocomplete和MVC 4中的JSON作为指南实现自动完成,因为它几乎与我需要的相同.我可能错过了一些"显而易见"的东西,因为我还不了解自动完成语法的所有部分.

问题:我可以得到建议的下拉列表.但是一旦我得到了

 Uncaught TypeError: Property 'results' of object #<Object> is not a
 function
Run Code Online (Sandbox Code Playgroud)

控制台中出错.此外,虽然建议出现,我不能选择任何一个.一旦我尝试,清单就会消失.虽然这可能完全不同.

jqueryUI1.9.2代码中错误的位置是此代码段中的最后一行:

__response: function( content ) {
    var message;
    this._superApply( arguments );
    if ( this.options.disabled || this.cancelSearch ) {
        return;
    }
    if ( content && content.length ) {
        message = this.options.messages.results( content.length );
Run Code Online (Sandbox Code Playgroud)

我的jquery看起来像这样:

    $("#FastCategory").autocomplete({
        source: function (request, response) {
            $.ajax({
                url: "/Quiz/GetCategory",
                type: "POST",
                dataType: "json",
                data: { term: request.term },
                success: function (data) { …
Run Code Online (Sandbox Code Playgroud)

jquery json jquery-ui autocomplete asp.net-mvc-4

8
推荐指数
1
解决办法
8832
查看次数

CSS 过渡到另一个元素被隐藏后元素的平滑过渡。

问题:我可以使用 CSS 过渡来控制一个 div 如何移动到由另一个隐藏的 div 创建的腾空空间。

我的应用程序中有元素根据用户设置的间隔出现和消失(显示:无)。正如 display:none 预期的那样,有时相邻元素会移动以占用由 .

我不介意在这种情况下移动。我想控制如何它的动作。我想要的是通过 css 转换或其他方法移动,而不仅仅是猛地到位。这可能吗?

这是一个 JS 小提琴,通过单击按钮说明了该场景。当#red 被隐藏时,我希望看到#blue 逐渐移动到位。谢谢。

http://jsfiddle.net/uV6W7/1/

这是jsfiddle中的代码:

HTML

<div id="red"></div>
<div id="blue"></div>
<p>
<button id="remove" type="button">Remove Red</button>
Run Code Online (Sandbox Code Playgroud)

CSS

#red {
    display: inline-block;
    background-color: red;
    height: 200px;
    width: 200px;
}
#blue {
    display: inline-block;
    background-color: blue;
    height: 200px;
    width: 200px;
}
Run Code Online (Sandbox Code Playgroud)

Javascript

$("#remove").on("click", function(event){
    if($('#remove').text()=="Remove Red") {
      $('#red').fadeOut();
      $('#remove').html("Restore Red");
    }else {
      $('#red').fadeIn();
      $('#remove').html("Remove Red");
    }
});
Run Code Online (Sandbox Code Playgroud)

html css css-transitions css-animations

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

EF 6 Code First迁移警告或阻止破坏性更新

问题:是否存在在运行迁移脚本时警告无意中丢失数据的设置.

自4.1以来我一直在使用代码优先迁移,但是在测试项目中进行实验时遇到了我没想到的行为.也许我没有跟上新功能.

说我有一个简单的模型:

    public class Customer
{
    public int Id { get; set; }
    public string Name { get; set; }
    public string Address { get; set; }
    public string City { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

和背景:

    public class CustContext : DbContext
{
    public CustContext() : base("DefaultConnection") { }
    public DbSet<Customer> Customers { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

我已经启用了迁移,创建了初始迁移,按如下方式更新了数据库,然后用数据填充了表.

enable-migrations
add-migration initial
update-database
Run Code Online (Sandbox Code Playgroud)

然后我将Address的名称更改为HomeAddress.这是迁移脚本:

add-migration HomeAddress

    public partial class HomeAddress : DbMigration
{
    public override void Up()
    {
        AddColumn("dbo.Customers", "HomeAddress", …
Run Code Online (Sandbox Code Playgroud)

entity-framework ef-migrations entity-framework-6 asp.net-mvc-5

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

检索单个字段值时的FirstOrDefault()

这类事总是让我烦恼,所以我想我会从聪明的人那里寻找一种"更好的方式".

我有一个查询,我想返回单个字段的值,这是一个int值.

int thivalue = (from q in context.tablename    
    where q.ID == id
    orderby q.fieldname descending
    select q).FirstOrDefault().fieldname;
Run Code Online (Sandbox Code Playgroud)

问题是查询可能没有返回结果,在这种情况下我希望thisvalue为0.

当然,如果没有结果,我会尝试访问不存在的字段.所以我的选择似乎是a)返回行(我不需要),所以我可以测试null并从那里开始,或者b)在它周围包装一个try catch并将值设置为0,其中看起来有点笨重.

我想也许DefaultIfEmpty()会帮助我,但似乎不是我想要的只是单个值.

那么这样做的正确方法是什么?当我只需要一个单独的值时,我只是顽固地想要不返回整行吗?

附录:(如果有人有兴趣)

在他的回答中,berkeleybross给了我两个明显相同的选择.但只有第二个给了我正确的结果.OrderByDescending似乎有些不对劲.使用Glimpse我查看了每个查询.

    var nextSequence =  db.PaneContents
                       .Where(q=>q.QuizPaneID == quizPaneId)
                       .OrderByDescending(q=>q.Sequence)
                       .Select (q=>q.Sequence)
                       .DefaultIfEmpty()
                       .First();
Run Code Online (Sandbox Code Playgroud)

产生了这个查询:

SELECT 
CASE WHEN ([Limit1].[C1] IS NULL) THEN 0 ELSE [Limit1].[Sequence] END AS [C1]
FROM ( SELECT TOP (1) 
    [Project1].[Sequence] AS [Sequence], 
    [Project1].[C1] AS [C1]
    FROM  ( SELECT 1 AS X ) AS [SingleRowTable1]
    LEFT OUTER JOIN  (SELECT 
        [Extent1].[Sequence] AS [Sequence], …
Run Code Online (Sandbox Code Playgroud)

entity-framework-4 dbcontext asp.net-mvc-4

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