小编Sat*_*pal的帖子

在AJAX发布后查看没有刷新

我有一个带有图像链接的网格(Infragistics JQuery网格)的视图(Index.cshtml).如果用户单击此链接,将调用以下jquery函数:

function ConfirmSettingEnddateRemarkToYesterday(remarkID) {

    //Some code...

    //Call to action.
$.post("Home/SetEnddateRemarkToYesterday", { remarkID: remarkID },  function (result) {
    //alert('Succes: ' + remarkID);
    //window.location.reload();
    //$('#remarksgrid').html(result);
});

}
Run Code Online (Sandbox Code Playgroud)

注释掉你可以看到我自己的警报和2次刷新视图的尝试.location.reload()有效,但对于浏览器来说基本上是太多了..html(result)在remarksgrid div中发布整个index.cshtml + Layout.cshtml double.所以这是不正确的.

这是它调用的动作(SetEnddateRemarkToY yesterday):

       public ActionResult SetEnddateRemarkToYesterday(int remarkID) {

        //Some logic to persist the change to DB.

        return RedirectToAction("Index");
    }
Run Code Online (Sandbox Code Playgroud)

这是它重定向到的操作:

[HttpGet]
public ActionResult Index() {
    //Some code to retrieve updated remarks. 
    //Remarks is pseudo for List<Of Remark>
    return View(Remarks);

}
Run Code Online (Sandbox Code Playgroud)

如果我在成功的AJAX帖子之后没有执行window.location.reload,那么视图将永远不会重新加载.我是MVC的新手,但我确信有更好的方法可以做到这一点.我不是在理解一些基本的东西.也许正朝着正确的方向努力?先感谢您.

asp.net-mvc jquery asp.net-mvc-3 asp.net-mvc-4

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

在单击按钮时禁用只读文本框

我在文本框中使用了"readonly"属性,使文本框不可编辑,我可能知道如何在单击按钮时禁用readonly属性.我们可以使用任何脚本吗?

<input type="text" name="" value="" readonly="readonly"/><br/>
<input type="submit" name="" value="update" onclick="" />
Run Code Online (Sandbox Code Playgroud)

html javascript

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

如何在moment.js中获取月份的简称?

我已成功找到月份的全名,但我想要一个月份的简称.谁能帮我.我正在使用Moment.js我已经成功找到了这个月但我希望简短形式
这里是我的代码:

var date = '<?php echo date("Y-m-d") ?>';
var Month = moment(date, 'YYY-MM-DD').format('DD/MMMM')
console.log(Month);
Run Code Online (Sandbox Code Playgroud)

它回报了我06/February,但我想要06/Feb

提前致谢 :)

javascript jquery momentjs

10
推荐指数
3
解决办法
9577
查看次数

按钮单击jQuery

我是jQuery的新手.我想使用按钮单击事件来引发警告框.这是我的代码,但它似乎无法工作.救命!请

<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
        <title>Jquery Basic</title>
        <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>
        <script>
            $(document).ready(function() {
                $('submit1').click(function() {
                    alert("JQuery Running!");
                )};
            });
        </script>
    </head>
    <body>
        <a>JQuery Test Page</a><br>
        <input id="submit1" type="button" value="Submit"/>
    </body>
</html>
Run Code Online (Sandbox Code Playgroud)

html javascript ajax jquery

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

如何在使用jquery更改选择值时调用选择框?

我有一个像这样的选择框

 <select class="cars" onChange="carName()">
  <option value="volvo">Volvo</option>
  <option value="saab">Saab</option>
  <option value="mercedes">Mercedes</option>
  <option value="audi">Audi</option>
</select>
Run Code Online (Sandbox Code Playgroud)

如果正在更改下拉值,则carName函数正在调用并按预期工作.如果假设我像这样使用jQuery更改值

$('.cars').val('Audi');
Run Code Online (Sandbox Code Playgroud)

我希望carName()调用该函数.我怎么能这样做?

javascript jquery select onchange

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

如何创建动态更改HTML内容的切换按钮?

我已经在这个问题上工作了好几天,并且已经在SO和网络上进行了研究,并且无法找到帮助我解决它的材料.

我正在尝试创建一个天气应用程序,可以切换华氏温度和摄氏温度之间显示的天气单位.我首先在Fahrenheit中附加天气,然后我创建了一个事件处理程序,它根据该元素当前是显示"F"还是"C"来有条件地更改相关元素的内部内容.

事实上,我的应用程序成功加载了华氏温度,并在点击时切换到摄氏温度,但它不会切换回华氏温度.我认为事件的注册方式存在一些问题,但对于我的生活,我无法弄明白.

这是我的代码:

var fahr = document.createElement("a");
fahr.attr = ("href", "#");
fahr.className = "tempUnit";
fahr.innerHTML = tempf + "&deg;F" + "<br/>";
$("#currentWeather").append(fahr);

var cels = document.createElement("a");
cels.attr = ("href", "#");
cels.className = "tempUnit";
cels.innerHTML = tempc + "&deg;C" + "<br/>";

var units = document.getElementsByClassName("tempUnit");

$(".tempUnit").click(function() {
    if (units[0].innerHTML.indexOf("F") != -1) {
        $(".tempUnit").replaceWith(cels);
    } else {
        $(".tempUnit").replaceWith(fahr);
    }
})
Run Code Online (Sandbox Code Playgroud)

非常感谢你提前!如有必要,很乐意提供更多信息.

html javascript jquery

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

无法弄清楚查询和子查询

我无法解决这个问题.我正在为大学做一些修改练习,并希望在2天之前通过我的考试.

我尝试了一些事情(最后我会发布).请善待,这是我的第一个数据库主题,所以我的尝试对你来说似乎很愚蠢.

问题如下:哪位艺术家目前拥有最多的节目?显示艺术家的名字和姓氏及其地址.ORDER BY子句不能使用.写一个SQL语句.使用子查询.

数据库中的相关表:

Shows (ShowName, ArtistId, ShowStartDate, ShowEndDate)
Artists (ArtistId, FirstName, FamilyName, Address, PhoneNum)
Run Code Online (Sandbox Code Playgroud)

我们假设ArtistId,ShowStartDate,FirstName,FamilyName和Address不能为null.

现在,我认为我必须计算每个艺术家目前的节目数量.然后,获得拥有/拥有最多的艺术家的ArtistId.使用ArtistId检索艺术家详细信息(名称和地址).

我得到了这个(这是非常错误的):

SELECT FirstName, FamilyName, Address
FROM Artists
WHERE ArtistId = (SELECT ArtistId
                  FROM Shows
                  WHERE ArtistId = (SELECT MAX(Counted) 
                                    FROM (SELECT ArtistId, COUNT(ArtistId) AS Counted
                                    FROM Shows
                                    WHERE ShowEndDate IS null
                                    GROUP BY ArtistId)
                  GROUP BY ArtistId));
Run Code Online (Sandbox Code Playgroud)

嗯,我知道

SELECT ArtistId, COUNT(ArtistId)
FROM Shows
WHERE ShowEndDate IS null
GROUP BY ArtistId
Run Code Online (Sandbox Code Playgroud)

给我一个表格,列出每个ArtistId被列出的次数.这很好.但是从这个结果表中,我需要获得具有最高计数的那个的ArtistId /.

这就是我迷失的地方.

任何人都可以轻松一点?

(至于我使用的DBMS:我们必须使用由大学创建和提供的DBMS.它是非常基本的SQL.比Access 2010简单).

谢谢

(如果你提供答案[谢谢你,谢谢你]你能否简要解释其背后的原因?)

sql

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

错误:在VS2012中将MVC4升级到MVC5

将我的项目从MVC4升级到MVC5后,我得到以下错误.我按照如何将ASP.NET MVC 4和Web API项目升级到ASP.NET MVC 5和Web API 2

Assembly 'WebServices.WebApi.External, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null' uses 'System.Web.Http, Version=5.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' which has a higher version than referenced assembly 'System.Web.Http, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' 如何解决这个问题?

asp.net-mvc-4 asp.net-mvc-5

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

单击提交按钮两次以发布表单

嗨,大家好我从以下代码发布用户输入有问题.只有在单击提交按钮两次后才会发布信息.请查看我的代码并告诉我是否有任何需要更改的内容.

先感谢您

<script>
function validate(form) {
    fail = validateName(form.name.value)
    fail += validateEmail(form.email.value)
    fail += validateCity(form.city.value)
    if (fail == "") {
        $(function () {
            $('#submitbtn').click(function (event) {
                event.preventDefault();
                var form = $(this).closest('form'),
                    action = form.attr('action');
                $.post(action, form.serialize(), function (data) {
                    $('#errors').html("You have been successfully subscribed to our newsletter.");
                })
            });
        });
    }
    else {
        document.getElementById('errors').innerHTML = fail;
    }
    return false
}
function validateName(field) {
    if (field == "") return "No name was entered.<br/>"
    else if (field.length < 3) return "Please enter …
Run Code Online (Sandbox Code Playgroud)

javascript validation jquery button

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

微风使用角$ http拦截器

我使用一个有角度的$ http拦截器来检查ajax请求是否返回401(未经过身份验证).如果响应为401,则原始请求排队,显示登录表单,登录成功后,将重试排队的请求.这已经与$ http一起使用了,角度拦截器的来源是:

define('common.service.security.interceptor', ['angular'], function() {
'use strict';

angular.module('common.service.security.interceptor', ['common.service.security.retryQueue'])

.factory('securityInterceptor', [
    '$injector',
    '$location',
    'securityRetryQueue',
    function($injector, $location, securityRetryQueue) {

        return function(promise) {

            var $http = $injector.get('$http');


            // catch the erroneous requests
            return promise.then(null, function(originalResponse){
                if(originalResponse.status === 401){
                    promise = securityRetryQueue.pushRetryFn('Unauthorized', function retryRequest(){
                        return $injector.get('$http')(originalResponse.config);
                    });
                }

                 return promise;
            });
        };
    }
])

// register the interceptor to the angular http service. method)
.config(['$httpProvider', function($httpProvider) {
    $httpProvider.responseInterceptors.push('securityInterceptor');

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

如何使用这个有角度的$ http拦截器创建breeze请求?

Breeze为文件"Breeze/Adapters/breeze.ajax.angular.js"中的angular $ http服务提供了一个包装器.所以第一个想法是告诉微风使用它:

breeze.config.initializeAdapterInstance("ajax", "angular", true);
Run Code Online (Sandbox Code Playgroud)

调试angular.js,它显示breeze现在实际上使用$ http,但它不执行上面注册的拦截器.在$ http里面,有一个数组"reversedInterceptors",它包含已注册的拦截器.我将此数组记录到控制台.如果我使用$ http,则此数组的长度为1(如预期的那样),但在使用breeze发出请求时,此数组为空. …

javascript ajax angularjs breeze angular-http-interceptors

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