小编Ste*_*art的帖子

如何确定HTML表单上的默认提交按钮?

如果表单已提交但未通过任何特定按钮提交,例如

  • 按下 Enter
  • HTMLFormElement.submit()在JS中使用

浏览器应该如何确定多个提交按钮中的哪一个(如果有的话)用作按下的按钮?

这在两个层面上很重要:

  • 调用onclick附加到提交按钮的事件处理程序
  • 数据发送回Web服务器

到目前为止,我的实验表明:

  • 按下时Enter,Firefox,Opera和Safari使用表单中的第一个提交按钮
  • 当按下时Enter,IE使用第一个提交按钮或根本不使用,这取决于我无法弄清楚的条件
  • 所有这些浏览器根本不使用JS提交

标准说什么?

如果它会有所帮助,这是我的测试代码(PHP仅与我的测试方法相关,而不是我的问题本身)

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
                      "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Test</title>
</head>

<body>

<h1>Get</h1>
<dl>
<?php foreach ($_GET as $k => $v) echo "<dt>$k</dt><dd>$v</dd>"; ?>
</dl>

<h1>Post</h1>
<dl>
<?php foreach ($_POST as $k => $v) echo "<dt>$k</dt><dd>$v</dd>"; ?>
</dl>

<form name="theForm" method="<?php echo isset($_GET['method']) ? $_GET['method'] : 'get'; ?>" action="<?php echo …
Run Code Online (Sandbox Code Playgroud)

html javascript standards cross-browser

201
推荐指数
6
解决办法
17万
查看次数

如何检查默认的DateTime值?

我需要检查一个DateTime值是否有值.

我有几个选择:

if (dateTime == default(DateTime))
Run Code Online (Sandbox Code Playgroud)

要么

if (dateTime == DateTime.MinValue)
Run Code Online (Sandbox Code Playgroud)

或使用可空的 DateTime?

if (nullableDateTime.HasValue)
Run Code Online (Sandbox Code Playgroud)

我个人更喜欢第三个版本,因为它的可读性非常好.但是在我们的数据库中,我们有一些datetime列,它们被定义为非null.所以在某些情况下我必须选择前两个选项.

我在某处读到了在default使用泛型时应该使用该关键字,但在这种情况下它是否更具可读性?当使用第二个选项时,我必须知道新的和空的DateTime实例的默认值是DateTime.MinValue,它具有我的实现细节的气味.

那么我应该使用哪个选项来使用"最佳实践"?

.net c# design-patterns

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

TSQL PIVOT MULTIPLE COLUMNS

我有下表但不确定是否可以转动这个并保留所有标签.

RATIO               RESULT   SCORE   GRADE
Current Ratio       1.294    60      Good
Gearing Ratio       0.3384   70      Good
Performance Ratio   0.0427   50      Satisfactory
TOTAL               NULL     180     Good
Run Code Online (Sandbox Code Playgroud)

我承认在使用枢轴方面不是很好,所以经过几次尝试导致这个输出:

SELECT 'RESULT' AS 'Ratio'
  ,[Current Ratio] AS 'Current Ratio'
  ,[Gearing Ratio] AS 'Gearing Ratio'
  ,[Performance Ratio] AS 'Performance Ratio'
  ,[TOTAL] AS 'TOTAL'
FROM
(
  SELECT RATIO, RESULT 
  FROM GRAND_TOTALS
) AS SREC
PIVOT 
(
  MAX(RESULT) 
  FOR RATIO IN ([Current Ratio],[Gearing Ratio], [Performance Ratio], [TOTAL])
) AS PVT
Run Code Online (Sandbox Code Playgroud)

这给出了结果:

Ratio    Current Ratio   Gearing Ratio   Performance Ratio …
Run Code Online (Sandbox Code Playgroud)

sql t-sql sql-server pivot

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

C Sharp中的'friend'关键字相当于什么?

C Sharp中的'friend'关键字相当于什么?

如何使用'internal'关键字?

我已经读过'内部'关键字是C#中'朋友'的替代品.

我在我的C#项目中使用了一个DLL,我有源代码,但我不想修改现有的代码.我继承了这个类,我可以以任何我想要的方式使用我继承的类.问题是父类中的大多数代码都有受保护的方法.以某种方式使用朋友可以访问或调用这些受保护的方法吗?

c# internal friend friend-class

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

<button>与<input type ="image">

这是一个"添加到篮子"控件,我的一位同事设计了一个漂亮的图形.显然它应该生成一个post请求,一个简单的超链接不会这样做.

亚马逊使用图像输入实现了它.但是有什么利弊

<input type="image" src="atb.png" alt="Add to Basket" />
Run Code Online (Sandbox Code Playgroud)

<button type="submit"><img src="atb.png" alt="Add to Basket" /></button>
Run Code Online (Sandbox Code Playgroud)

(并使用CSS来控制外观)?

我想这归结为这些问题:

  • 是否所有的图形和非图形浏览器都能成功实现键盘可访问的图像输入?(或者,对于无键盘设备,无论输入方式是什么,都可以访问它们?)

  • 哪些浏览器不支持<button>

  • 各有哪些优点/缺点?

  • 有没有其他可能的方法有自己的优势(除了忘记它,只是使用简单的提交)?

html accessibility

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

PHP cURL:获取重定向的目标,而不是遵循它

curl_getinfo函数返回有关HTTP请求结果的大量元数据.但是,由于某种原因,它不包括我想要的信息,如果请求返回HTTP重定向代码,则是目标URL.

我没有使用CURLOPT_FOLLOWLOCATION,因为我想将特定的重定向代码作为特殊情况处理.

如果cURL可以遵循重定向,为什么它不能告诉我当它没有跟随它们时它们重定向到什么?

当然,我可以设置CURLOPT_HEADER标志并选择Location标头.但是有更有效的方法吗?

php curl

8
推荐指数
3
解决办法
7483
查看次数

RSS guids实际上是否_globally_唯一?

只是试图清除<guid>RSS源中元素实际应该具有的唯一性级别.我理解其主要目的之一是软件可以用来识别项目,用于读取/未读取跟踪等目的.但我是对的:

  • 一旦使用了guid,它就不应该再次使用,即使最后一个实例已经从饲料中移除了很久以前?
  • 它不仅应该在Feed中是唯一的,而且应该是多个Feed中的唯一,甚至(在可以达到的程度上)不相关的网站?
  • 使用URL作为guids的常见原因之一是帮助实现上述目标?

此外,如果一个程序确实在不同的feed 遇到过两次相同的guid,会发生什么?

  • 它将它们视为不同的RSS项目,因为它们位于不同的Feed中?
  • 它们被认为是同一个项目,只是在多个地方发布(类似于Usenet交叉点)?
  • 这取决于他们是否在同一个网站/域名?
  • 行为未定义?

rss

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

如何检查组合框下拉列表显示的是向上还是向下?

我有从combobox继承的控件(已实现C#、. Net 2.0)。它具有过滤和其他内容。为了保持UI的正确性,当过滤期间的项目数下降时,下拉列表会更改其大小以适合剩余的项目数(这是通过NativeMethods.SetWindowPos(...)完成的)。

有什么方法可以检查下拉列表是向上显示还是向下显示(不是字面上显示的)-不是检查列表是否打开,而是打开,而是向上还是向下?

干杯,jbk

.net c# combobox drop-down-menu

7
推荐指数
2
解决办法
8658
查看次数

如何使用嵌入作为资源的清单?(Windows XP/Vista风格的控件)

我有一个嵌入了Windows资源的清单.但是应用它的正确方法是什么?

进一步来说:

我有我的.manifest文件.这是使应用程序使用Windows XP/Vista视觉样式中的控件的标准版本.当通过与.exe位于同一目录并且适当命名时应用它,它可以工作.

但是,这种方法相当麻烦.我希望我的.exe是独立的.显然它可以完成,因为我的计算机上的许多应用程序都设法使用现代风格而没有单独的清单文件.

所以我环顾四周,最后发现将清单嵌入资源中.所以我已将此行添加到我的.rc文件中:

1 RT_MANIFEST "mdiedit.exe.manifest"
Run Code Online (Sandbox Code Playgroud)

但接下来我该怎么办?

编辑:如果它可以帮助您了解,我的程序是用D编写的,并使用Digital Mars D和资源编译器构建.没有IDE.但是我希望任何在C(++)中工作的解决方案,当使用命令行工具构建时,也可以在D中工作.

configuration resources winapi manifest

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

SQL Server - 任何等效的Excel的CHOOSE功能?

如果以前没有问过这件事我会感到惊讶,但是我找不到任何东西.Excel有一个功能

CHOOSE(n, x_1, x_2, x_3, ...)
Run Code Online (Sandbox Code Playgroud)

对于给定的n值,返回x_n.

SQL Server 2008是否支持SQL(标准或MS特定)中的任何类似内容?我知道应该使用数据库中的查找表来实现它,但是对于我正在做的事情,我无法将新表添加到数据库中.

我可以创建一个临时表并从SQL脚本填充它,或使用

CASE n WHEN 1 THEN x_1 WHEN 2 THEN x_2 WHEN 3 THEN x_3 ... END
Run Code Online (Sandbox Code Playgroud)

但有什么不那么麻烦吗?

sql-server sql-server-2008

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

是否可以将迭代器作为索引返回?

例如,如果我这样使用std::find_if:

std::vector<Rect>::iterator it = 
  std::find_if(regions.begin(), regions.end(), find_region(x,y));
Run Code Online (Sandbox Code Playgroud)

我能it以一种简单的方式获得迭代器的索引吗?

c++ stl

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

SQL Server:如何循环遍历一个表,将多记录更新应用到另一个表?

我希望根据包含更新详细信息的表 Y 更新表 X 中的记录。困难在于

  • Y 的一行表示对 X 中指定数量的记录的更新。
  • Y 中可能有多个记录,它们指定对 X 中的记录进行不同的更新,这些记录在它们匹配的字段中是相似的;在这种情况下,更新应应用于 X 的不相交子集。

假设 X = materials(id, type_id, status, data); Y=material_updates(run_id, type_id, quantity, data)

id只是一个内部主键字段)

然后我想做的是(相当于)循环一个简单的查询,比如

SELECT * 
FROM material_updates 
WHERE run_id = :run;
Run Code Online (Sandbox Code Playgroud)

对于每个row结果集,应用类似的东西

UPDATE TOP(row.quantity) materials 
SET data = row.data, status = 1
WHERE status = 0 AND type_id = row.type_id;
Run Code Online (Sandbox Code Playgroud)

status(在我试图解决的问题中,的变化恰好是恒定的)

样本数据

材料_更新表:

run_id  type_id quantity    data
   1       1        3         42
   1       2        2         69
   1       2        1 …
Run Code Online (Sandbox Code Playgroud)

t-sql sql-server

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

LINQ-按相同功能过滤和排序的最有效方法

我正在寻找一种按功能对集合进行排序的有效方法,并同时根据该函数的求值对集合进行过滤。为了显示:

var materialsByExpiry = from m in materials
                        where m.ExpiryDate() >= today
                        orderby m.ExpiryDate()
                        select m;
Run Code Online (Sandbox Code Playgroud)

由于materials是一个大集合,并且ExpiryDate是一个非平凡的计算,因此我想最大程度地减少对的调用次数ExpiryDate。显然ExpiryDate,每种材料只需要调用一次,但是此代码将其调用n + q次,其中n是元素总数,q是通过过滤器的数量。

我可以看到一种可能性是定义一个结构,该结构可以存储物料及其有效期并进行处理。但是,有没有更有效的方法(花时间去制定自己的排序/过滤器算法)?

.net c# linq sorting

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