小编Bra*_*one的帖子

设置ajax(jQuery)的超时

$.ajax({
    url: "test.html",
    error: function(){
        //do something
    },
    success: function(){
        //do something
    }
});
Run Code Online (Sandbox Code Playgroud)

有时success功能很好,有时候不行.

如何为此ajax请求设置超时?例如,3秒,如果时间结束,则显示错误.

问题是,ajax请求冻结块直到完成.如果服务器停机一段时间,它将永远不会结束.

html javascript css ajax jquery

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

选择后,选择选项的文本会有所不同

问题

这很难解释,所以请耐心等待.今天我遇到了一个奇怪的场景,我解决了,但我不确定为什么我的解决方案有效.

我创建了一组选择并编写了一个脚本,通过从其他选择列表中删除所选选项,限制您不止一次选择相同的选项.

但是在IE(包括IE9)中,选项列表显示错误的选项,但一旦选中它将显示正确的选项.

在此输入图像描述

重新创建错误

在我的第一个脚本中,您可以通过执行以下操作来达到此状态:

注意:这只是IE.适用于Chrome

脚本: http ://jsfiddle.net/s6F4h/37/

  1. 在第一个下拉菜单中选择3
  2. 在第二个下拉菜单中选择1
  3. 在第一个下拉菜单中选择1(不应该是可用选项)
  4. 请注意,所选值为2!
  5. 请注意,在第二个下拉列表中更改所选值也会产生与显示的值不同的值.
  6. 最后,请注意DOM正在显示正确的值 在此输入图像描述

修复错误(神奇地)

现在通过随机猜测工作找到我的修复...

脚本: http ://jsfiddle.net/s6F4h/36/

像这样创建我的选择会导致奇怪的行为:

var $S1 = $('<select class="question" />'); 
Run Code Online (Sandbox Code Playgroud)

像这样创建我的选择可以纠正这种行为:

var $S1 = $('<select />', {'class': 'question'}); 
Run Code Online (Sandbox Code Playgroud)

跟进

  • 上面两个jQuery对象有什么区别?
  • IE在世界上如何在DOM中显示一个东西,在实际页面上显示另一个东西(我知道CSS 内容可以做到这一点,但是没有涉及到CSS)?不会那么糟糕,这只是一个IE6-8的东西,但它在IE9中可以重现!
  • 它可能是IE错误还是jQuery错误?

最后,也许我刚刚做了一些令人难以置信的愚蠢事情,并且在我的歇斯底里中编造了一些荒谬的结论.如果我这样做的话,请轻轻地通知我.

html javascript jquery internet-explorer

10
推荐指数
1
解决办法
1314
查看次数

Google Books API仅返回10个结果

我正在实现一个PHP应用程序,它首次需要来自Google Books API的一些数据.这很尴尬,但是当我使用典型的查询 http://books.google.com/books/feeds/volumes?q=search+term(以前有过特定API经验的人,可以理解我)时,它只返回10个结果.

例如,http ://books.google.com/books/feeds/volumes?q=php 的XML响应包含以下字段:totalResults> 582.但是,我只检索了10个.

在阅读相应的文档后,我还没有得出解决方案.

谁能帮助我?

php xml api google-books

8
推荐指数
2
解决办法
5776
查看次数

window.open在IE中使用相对URL失败(使用基本标记时)

问题

我正在使用基本标记来解析某些动态生成的.html页面中特定点的相对URL.

这很好用,直到我尝试在javascript中使用Window.open.Firefox可以很好地解决所有问题,但是IE会将URL解析为显示的URL.

是否有IE解决这个问题?

我想避免

通过Javascript/jQuery将URL与基本标记中的href相结合.(除非它是防弹.认识到非相对网址和相对网址之间的区别,在合并时处理'/'或none'/'的存在...等等.

即使你有这样的解决方案.内置的一个将是首选(格式化我的相对URL以使IE快乐?或其他).

<html>
  <head>
    <base href="http://stackoverflow.com" />
    <script type="text/javascript">
    showWindowPopupFullScreen = function(URL) {
        var pageWidth = screen.availWidth;
        var pageHeight = screen.availHeight;
        var popup = window.open(URL, 'Window', 'height=' + pageHeight + ',width=' + pageWidth + ',top=0,left=0,resizable');
        if (window.focus) {
            popup.focus();
        }
    }
    </script>
  </head>
  <body>
    <a href="javascript:showWindowPopupFullScreen('users/402706/brandon-boone')">test</a>
  </body>
</html>   
Run Code Online (Sandbox Code Playgroud)

html javascript internet-explorer

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

C#中的"应用程序配置文件"和"设置文件"有什么区别?

让两个文件看起来做同样/类似事情的目的是什么?一个被弃用了,我应该使用另一个吗?拜托,请为我分解.

谢谢!

应用配置图像 设置文件图像

.net c# configuration app-config

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

序列化:更改根节点的名称而不更改类名

目标

获取名为"Item"的类并将其序列化XML输出为:

<Template><!--some properties --></Template>
Run Code Online (Sandbox Code Playgroud)

问题

根节点是从实现IXmlSerializable的类名派生的.

    // By the time I get here 'writer' already has a root node
    public void WriteXml(XmlWriter writer)
    {
        writer.WriteStartElement("Template");
         // write out the properties
        writer.WriteEndElement();
    }
Run Code Online (Sandbox Code Playgroud)

所以我最终看起来像是XML

<Item><Template><!-- some properties --></Template></Item>
Run Code Online (Sandbox Code Playgroud)

是否有属性,我可以覆盖的属性,或任何可以获得我想要的效果(除了更改类名)?

谢谢!

分辨率归功于弗雷德里克!

由于这个问题在我对@Frederik Gheysels回答的评论中有所回答,我想我会把它放在这里,所以它不会被埋没.

只需向类中添加XmlRoot属性,这将更改根节点的输出xml.

例:

[XmlRoot("Template")]
public class Item : IXmlSerializable
{
   //Item's properties
}
Run Code Online (Sandbox Code Playgroud)

.net c# xml xml-serialization ixmlserializable

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

根据行索引数组获取行的jQuery集合

我有一个索引数组(没有特定的顺序),我需要<tr>根据这些索引选择表中的所有s.

我所拥有的感觉草率和低效.有没有更好的方法来编写这个选择器?

对于那些喜欢小提琴的人:http://jsfiddle.net/PwnhJ/1/

对于其他人:

<table>
    <tr>
        <td>one</td>
    </tr>
    <tr>
        <td>two</td>
    </tr>
    <tr>
        <td>three</td>
    </tr>
    <tr>
        <td>four</td>
    </tr>
    <tr>
        <td>five</td>
    </tr>
    <tr>
        <td>six</td>
    </tr>
    <tr>
        <td>seven</td>
    </tr>
</table>

var indices = [0,3,4,6];
//What I'd love to do
alert($("tr").eq(indices).length); //returns 0

//What does work, but feels sloppy & inefficient 
var selector = ""; 
$(indices).each(function(i, index){
    selector += "tr:eq(" + index + ")";
    if(i + 1 != indices.length){
        selector += ","
    }
});

alert($(selector).length); //returns 4
Run Code Online (Sandbox Code Playgroud)

任何帮助,评论和建议将不胜感激.

谢谢!

html javascript jquery

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

nodejs中的套接字

我需要在 nodejs 中编写套接字,例如在 PHP 中。在 PHP 语言中,我执行以下操作:

$http_request  = "POST $path HTTP/1.0\r\n";
$http_request .= "Host: $host\r\n";
$http_request .= "User-Agent: Picatcha/PHP\r\n";
$http_request .= "Content-Length: " . strlen($data) . "\r\n";
$http_request .= "Content-Type: application/x-www-form-urlencoded;\r\n";
$http_request .= "\r\n";
$http_request .= $data;

$response = '';
$fs = @fsockopen($host, $port, $errno, $errstr, 10)
if (FALSE == $fs) {
  die('Could not open socket');
}

fwrite($fs, $http_request);
Run Code Online (Sandbox Code Playgroud)

如何在 nodejs 服务器中执行上述操作?

sockets node.js

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

Internet Explorer脚本错误,来自网页的消息,权限被拒绝

我正在VB6应用程序中使用IE的嵌入式(Active X?)实例.

浏览器显示基于所选人员的人口统计信息(显示为列表).

一切都很好,直到我尝试从列表中快速选择不同的人(尽可能快地随机点击不同的人).点击几下后,会出现两个错误.

第一个是" Internet Explorer脚本错误 "

它说:

此页面上的脚本中出现错误
行:
字符:
错误:
代码:
URL:是否要继续在此页面上运行脚本?是|否

(行,字符,错误,代码,URL都是空白的).

第二个错误直接在第一个错误上弹出.

它说:

" 来自网页的消息

此对话框中发生
错误错误:53权限被拒绝
"

该页面进行了多次ajax调用,并且还包含多个iFrame(我认为这些是原因).

任何有关如何调试/解决/避免问题的建议都将非常受欢迎.

谢谢!

编辑

这是错误的图像

错误http://img84.imageshack.us/img84/3647/errori.png

编辑

我得到了一个JScript匿名函数,当我碰巧遇到错误时没有可用的源代码.

没有可用的来源

编辑

我成功地抓住了一些错误.它们似乎主要来自MicrosoftAjax.js

  • 一致发生:MicrosoftAjax.js - Sys._Application.callBaseMethod(this,"initialize"); 对象预期
  • 发生一次:jquery-1.4.2.min.js - b.InsertBefore(d,b.firstChild)预期的对象
  • 发生一次:内存不足异常.

我的主机应用程序根本没有使用MicrosoftAjax.js,但子iFrame应用程序都是asp.Net应用程序.

javascript c# asp.net internet-explorer

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

使用linq和lambdas的多分隔字符串到对象列表

概观

我有一个用逗号分隔的字符串,表示对象和空格,表示这些对象的属性:

string sOrderBy = "Column1 ASC, Column2 DESC";
Run Code Online (Sandbox Code Playgroud)

我需要将其转换为以下List<OrderByColumn>位置OrderByColumn:

public class OrderByColumn
{
    public string ColumnName { get; set; }
    public bool IsAscending { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

问题

sOrderBy.Split(',').Select(x => new OrderByColumn()
{
    ColumnName = x.Trim().Split(' ')[0].Trim(),
    IsAscending = x.Trim().Split(' ')[1].Trim() == "ASC" ? true : false
}).ToList<OrderByColumn>();
Run Code Online (Sandbox Code Playgroud)

上面的代码有效,但是在x.Trim().Split(' ')多次调用时存在一些冗余.(另外,我知道代码目前假设有0和1数组值).

有没有办法删除这种冗余?以某种方式将结果传递x.Trim().Split(' ')给匿名函数,然后OrderByColumn从那里返回一个对象?

我知道我可以使用两个for/foreach循环来解决这个问题,但是linq和lambdas非常酷!:-)

c# linq arrays lambda

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