小编nic*_*ckf的帖子

表格有动作=""

我刚刚发现(困难的方法),当你有一个HTML表单时action="",Webkit浏览器会以不同的方式对待Firefox和Internet Explorer.

在FF和IE中,这两个表单标签是等效的:

<form method="post" action="">

<form method="post">
Run Code Online (Sandbox Code Playgroud)

他们都会将表格提交回同一页面.然而,Safari和Chrome会将第一个表单发送到默认页面(index.php或其他) - 第二个表单与FF/IE的工作方式相同.

我很快就破解了我的代码,以便在通常打印空操作的任何地方,它根本不添加动作属性.

这看起来非常混乱,而不是做事的最佳方式.有谁能建议更好的方法?另外,任何人都可以告诉我为什么Webkit会做这样的事情?

html forms

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

你可以取消注册关机功能吗?

是否有可能在PHP中取消注册设置的功能(或所有功能)register_shutdown_function()

php

26
推荐指数
2
解决办法
9879
查看次数

如何确定函数是否为空

我希望能够检查给定的函数是否为空.也就是说,它的身体里没有任何东西,例如:

function foo() {}
function iAmEmpty(a) {
    // yep, empty
}
Run Code Online (Sandbox Code Playgroud)

通过一些初步的游戏,我有一些我认为可能没问题的东西,通过使用toString()和一些正则表达式.

function foo(a, b, c) {}

/^function[^{]+\{\s*\}/m.test(foo.toString());  // true

function bar(a, b, c) { var d; }

/^function[^{]+\{\s*\}/m.test(bar.toString());  // false
Run Code Online (Sandbox Code Playgroud)

我只是想知道是否有更好的方法?你可以看到上面有什么问题吗?

javascript reflection

25
推荐指数
2
解决办法
2338
查看次数

将原始Markdown文本传递给Jade

我正在玩我的第一个Node.js Express应用程序,正如每个程序员都知道的那样,在测试新框架时你应该首先构建的是博客!无论如何,我想在Markdown中写文章然后在视图中呈现它.我看到Jade允许在视图内部使用过滤器完成此操作,但我无法使其正常工作.

为了简化这种情况,这里是我正在谈论的一个例子.

//app.js
res.render("article", {
    md : "Hello World!\n\n*Woo*"
});

//article.jade
section
    :markdown
        #{md}
Run Code Online (Sandbox Code Playgroud)

但是,这产生了这样的结果:<section><h1>{md}</h1></section>......它并没有代替我传给它的变量.

然后我尝试了这个:

//article.jade
section
    :markdown
        !{md}
Run Code Online (Sandbox Code Playgroud)

输出是这样的:

<section><p>Hello World!

*Woo*</p></section>
Run Code Online (Sandbox Code Playgroud)

所以,现在它没有解析降价!

我已经能够通过解析app.js文件中的markdown 然后将HTML传递给视图来显示来实现这一点,但我不知道,这似乎有点混乱.

有没有办法将变量传递给Jade过滤器?

markdown node.js express pug

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

如何在Joomla 1.5中获取当前模板的路径?

我正在编写一个组件,并希望从模板文件夹中插入图像.

如何获得模板文件夹的正确路径?

php joomla joomla1.5

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

在PHP中检测文件编码

我有一个脚本,它将多个文件合并为一个,当其中一个文件具有UTF8编码时,它会中断.我认为我应该utf8_decode()在读取文件时使用该函数,但我不知道如何判断哪个需要解码.

我的代码基本上是:

$output = '';
foreach ($files as $filename) {
    $output .= file_get_contents($filename) . "\n";
}
file_put_contents('combined.txt', $output);
Run Code Online (Sandbox Code Playgroud)

目前,在UTF8文件的开头,它在输出中添加了这些字符: 

php utf-8 character-encoding

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

在Javascript中,你能扩展DOM吗?

在Javascript中,您可以使用其原型对象扩展现有类:

String.prototype.getFirstLetter = function() {
    return this[0];
};
Run Code Online (Sandbox Code Playgroud)

是否可以使用此方法来扩展DOM元素?

javascript dom

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

从firefox边栏扩展获取当前页面URL

我正在为Firefox编写侧边栏扩展,需要一种方法来获取当前页面的URL,以便我可以针对数据库进行检查并显示结果.我怎样才能做到这一点?

url firefox xul sidebar

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

在PHP中解析日期的字符串

给定一个任意字符串,例如("I'm going to play croquet next Friday""Gadzooks, is it 17th June already?"),你将如何从那里提取日期?

如果这看起来像是一个太难的篮子的好候选人,也许你可以建议一个替代方案.我希望能够解析Twitter消息的日期.我要查看的推文将是用户指导此服务的推文,因此可以使用更简单的格式进行指导,但我希望它尽可能透明.你能想到一个良好的中间立场吗?

php datetime parsing nlp

22
推荐指数
2
解决办法
1472
查看次数

骨干路由器导航和锚点href

在支持骨干的应用程序中,我看到了继续使用的代码<a href="#foo"></a>,而锚点击是由骨干事件处理程序处理的.

或者,导航到#foo可以通过以下方式处理:

Router.history.navigate("foo");
Run Code Online (Sandbox Code Playgroud)

我相信后者是一种优越的方法,因为它允许轻松迁移到HTML5的pushState功能.如果我们确实使用pushState,那么对于不支持pushState的浏览器,Backbone可以优雅地降级为#foo.

由于我还是Backbone的新手,有经验和知识渊博的人可以证实这是事实吗?

javascript backbone.js

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