我有一个使用bootstrap的Web应用程序(2.3.2 - 公司策略,如果没有在多个Web应用程序上进行大量测试,我们无法升级到3.0).我们在此应用程序中有几个长页面需要验证表单和表格 - 但是由于实际和美学原因,我们需要在页面顶部显示一条警告消息作为浮动div.
这将是一个固定的浮动div,可以在需要时使用javascript显示和隐藏.这部分工作,我可以控制这个div,每当我需要向用户闪现一些信息或发生一些错误.
布局是这样的:
<div id="message">
<div id="inner-message" class="alert alert-error">
<button type="button" class="close" data-dismiss="alert">×</button>
test error message
</div>
</div>
Run Code Online (Sandbox Code Playgroud)
造型如下:
#message {
position: fixed;
top: 0;
left: 0;
width: 100%;
}
#inner-message {
margin: 0 auto;
}
Run Code Online (Sandbox Code Playgroud)
#message div表现得很好,但是当我尝试在#message div中添加一些填充(尝试在页面边缘和div之间获得一些空间,即填充:5px)时,div只会获得填充在左侧和顶部,div的其余部分被推出到页面右侧太远(隐藏引导警报内部的'x'部分).
有谁之前经历过这个吗?这似乎是一个简单的问题,所以我忽略了什么?
我正在寻找像jsfiddle这样的东西但是对于java,所以可以共享和测试代码片段和类.
目前,我正在使用pastebin和compileonline.com的组合.我宁愿不注册一个庞大的在线编译服务,只是一个快速而又脏的代码共享/测试平台,它为我的代码片段提供了唯一的URL.
我见过其他人提出类似的问题:https: //stackoverflow.com/questions/15320286/is-there-online-compiler-for-java-like-jsfiddle
但似乎没有合适的工具.有人提供任何指示吗?
我有一个if语句,用于检测用户是否已登录并属于某个部门.这真的很简单.
有一个Permissions.php类,如果登录则返回User对象或NULL.
protected $user = NULL;
...
public static function instance() {
if(!self::$instance) {
self::$instance = new Permissions();
}
return self::$instance;
}
...
public function get_user() {
return $this->user;
}
Run Code Online (Sandbox Code Playgroud)
然后是user.php类,它具有返回它们所在部门的功能:
public function is_manager() {
return $this->is_manager;
}
Run Code Online (Sandbox Code Playgroud)
所以我应该能够做到以下几点:
if(Permissions::instance()->get_user()->is_manager())
Run Code Online (Sandbox Code Playgroud)
但是当然可能会抛出关于NULL对象的警告,所以我认为你可以做到以下几点:
if( ( ! is_null( Permissions::instance()->get_user() ) ) &&
( Permissions::instance()->get_user()->is_manager() ))
Run Code Online (Sandbox Code Playgroud)
哪个应该检查null,如果没有,它应该评估if语句的另一半,但PHP由于某种原因,评估所有它并仍然抱怨一个NULL对象(当用户没有登录时).
然后我将if语句分解为嵌套的if语句,并且PHP仍然抱怨null对象,这让我相信is_null方法没有按预期工作.
这最终奏效了:
if (Permissions::instance()->get_user() != NULL) {
if(Permissions::instance()->get_user()->is_manager()){
...
}
}
Run Code Online (Sandbox Code Playgroud)
我的问题是,为什么带有is_null函数的代码不起作用?
经过进一步测试,感谢你的一些好评,结果get_user()是没有返回NULL,但是(bool)false(来自var_dump).为什么会出现这种奇怪的行为?我的类在顶部清楚地将它设置为NULL,函数将变量返回为false?
我正在使用RESTful API,我的Javascript代码通过jQuery的$ .ajax()调用进行REST查询.
我已经实现了一个javascript Rest类,我将在下面展示(大大简化):
var Rest = function (baseUrlPath, errorMessageHandler) {
...
};
// Declare HTTP response codes as constants
Rest.prototype.STATUS_OK = 200;
Rest.prototype.STATUS_BAD_REQUEST = 400;
... // other rest methods
Rest.prototype.post = function (params) {
$.ajax({
type: 'POST',
url: params.url,
data: params.data,
dataType: 'json',
contentType: 'application/json; charset=utf-8',
beforeSend: this._authorize,
success: params.success,
error: params.error || this._getAjaxErrorHandler(params.errorMessage)
});
};
... // more rest methods
Rest.prototype.executeScenario = function (scenarioRef) {
var self = this;
this.post({
url: 'myurlgoeshere',
data: 'mydatagoeshere',
success: function …Run Code Online (Sandbox Code Playgroud) 我正在编写一个小脚本来计算扣除后的税额.我的应用程序有几个提供CRUD功能的PHP脚本.我可以添加每月费用,总帐单收入,然后计算公司税的欠款.
所有数据都存储在数据库中,但是在进行计算时我遇到了一个有趣的问题,我将简化下面的代码,以便可以重现:
$total = 1.0;
$tax = 0.2;
$expenses = 0.05;
echo (($total-$tax) + $expenses); // this echo's 0.85
// (1.0 - 0.2) + 0.05
if( (($total-$tax) + $expenses) == 0.85 ) {
echo "totals add up";
}
else {
echo "accounting error";
}
Run Code Online (Sandbox Code Playgroud)
我们的想法是所有总数都按百分比计算.1.0是收入的100%,有关月份的费用是5%(不是真的,但为了争论,因为我的实际计算有点复杂),无论哪种方式,这似乎是最简单的我可以把我的计算结果归结为.
所以100%(收益) - 20%(公司税)+ 5%(费用索赔)应该留给我85%的总额.如第一个echo声明所示.
然而,if语句会跳起并说"会计错误".这里发生了什么?
我对underscore.js相对较新,我有一个来自REST服务的对象,看起来像这样(我手动输入并将其分配给var):
var production = [
{key: ["wind", "1"], value: 5},
{key: ["wind", "2"], value: 9},
{key: ["wind", "3"], value: 11},
{key: ["wind", "4"], value: 7},
{key: ["solar", "1"], value: 1},
{key: ["solar", "2"], value: 1},
{key: ["solar", "3"], value: 2},
{key: ["solar", "4"], value: 3},
{key: ["oil", "1"], value: 15},
{key: ["oil", "2"], value: 16},
{key: ["oil", "3"], value: 22},
{key: ["oil", "4"], value: 23},
];
Run Code Online (Sandbox Code Playgroud)
然后再往下,我有一些代码解析这个对象并为这些项创建数组,如下所示:
var orderedProduction = _.chain(production)
.groupBy(function (entity) {
return entity.key[0];
})
.map(function (values) { …Run Code Online (Sandbox Code Playgroud) 我试图在localhost上的apple mac上设置虚拟主机.该服务器由XAMPP提供,它将Apache/MySQL/PHP捆绑在一起.
这是我到目前为止所做的:
edited/private/etc/hosts包含127.0.0.1以指向test.myserver.local
127.0.0.1 test.myserver.local
Run Code Online (Sandbox Code Playgroud)
编辑/Applications/XAMPP/etc/extra/httpd-vhosts.conf以包含我的vhosts详细信息
<VirtualHost *:80>
DocumentRoot /Users/???/Documents/workspace/trunk/htdocs
ServerName test.myserver.local
<Directory "/Users/???/Documents/workspace/trunk/htdocs">
AllowOverride All
</Directory>
</VirtualHost>
Run Code Online (Sandbox Code Playgroud)
在其中放置了一个简单的index.html,其中包含单词test.
我重新启动了服务器,然后浏览到测试URL,用Apache的默认页面而不是我的测试页面打招呼.vhosts文件适用于另一个虚拟主机,代码复制时各个位已更改(即文件夹路径),hosts文件正常工作,因为当Apache关闭时,我的浏览器显示服务器未找到.
为什么Apache拒绝出现我的测试代码?我需要更改其他文件吗?我想不出任何其他人,通常只是那些在linux/windows上.
我正在使用knockout.js编写下拉列表:
views()是使用REST通过JSON实例化的对象数组.displayName是这些对象的String属性,不可观察.我想比较displayName属性,如果它匹配某个单词,我想将一些样式应用于该选项.
<select id="views" data-bind="
options: views(),
optionsText: 'displayName',
optionsValues: 'id',
value: selectedView,
style: { color: ( displayName == 'some arbitrary text') ? 'red' : 'black' }
"></select>
Run Code Online (Sandbox Code Playgroud)
当我不添加样式绑定时,下拉按预期工作.我可以做一个简单的比较(即1 == 1)并且它有效(尽管所有选项都变为红色).我想要做的是将'displayName'属性与一些任意文本进行比较.它现在只是一个字符串,包含任何文本,但稍后将从我的ViewModel调用此字符串.
这将允许我以不同的样式设置某些选项,如果我的视图模型需要它们.有任何想法吗?
javascript ×4
oop ×2
apache ×1
arrays ×1
css ×1
html ×1
java ×1
jsfiddle ×1
knockout-2.0 ×1
knockout.js ×1
logic ×1
macos ×1
object ×1
php ×1
xampp ×1