我试图使用jQuery将click事件绑定到某个元素.使用原型我知道我可以使用BindAsEventListener().
例:
var myObject = {
init: function(txtOneId, txtTwoId, lblResultId, ancAddId) {
this.txtOneId = txtOneId;
this.txtTwoId = txtTwoId;
this.lblResultId = lblResultId;
this.ancAddId = ancAddId;
var addListener = this.addResult.bindAsEventListener(this);
Event.observe(this.txtOneId, 'keyup', addListener);
Event.observe(this.txtTwoId, 'keyup', addListener);
},
addResult: function() {
var valueOne = $(this.txtOneId).value;
var valueTwo = $(this.txtTwoId).value;
if (isNaN(valueOne) || valueOne == "")
valueOne = 0;
else
valueOne = parseInt(valueOne);
if (isNaN(valueTwo) || valueTwo == "")
valueTwo = 0;
else
valueTwo = parseInt(valueTwo);
var result = valueOne + valueTwo; …Run Code Online (Sandbox Code Playgroud) 我们有一个带有"打印机友好"链接的ASP.NET C#Web应用程序.有没有办法以编程方式将方向设置为横向,因此用户只需按下打印按钮?
我有以下查询返回给定日期每天的登录计数.
var sot = from uts in DataContext.UserTrackingStatistics
let startDate = new DateTime(2009, 10, 01)
where uts.LastLogin >= startDate
group uts by uts.LastLogin.Date into myGroup
orderby myGroup.Key.Date
select new { Count = myGroup.Count() , myGroup.Key.Date};
Run Code Online (Sandbox Code Playgroud)
我希望这可以说一天的计数是0,而不是没有返回任何东西.我怎么能在这个查询中做到这一点?
我想知道的是,如果我从正确的角度接近这一点.
我有一个我正在构建的asp.net应用程序.我正在使用Masterpage来查看应用程序的整体外观(下面您可以看到代码).
我想让菜单系统使用像jQuery .load()函数这样的动态加载来加载内容.那很好,我把它弄下来了.该.load()函数用于innerHTML将该内容泵入页面.如果在该页面上要加载特定于模块的脚本和样式,则会出现此问题.
我的问题是,在这样的环境中,你们如何加载这些模块的脚本?我应该在应用程序的初始加载时加载每个脚本吗?这个应用程序永远不会"那么大",但我想确保我做对,以防万一.
MasterSheet
<div id="primaryNavigation">
<ul>
<li class="current"><a href="../Default.aspx">Main</a></li>
<li><a href="../Modules/Page1.aspx">Some Overview</a></li>
<li><a href="../Modules/Page2.aspx">Reporting</a></li>
<li><a href="../Modules/Page3.aspx">More Reporting</a></li>
<li><a href="../Modules/Page4.aspx">About</a></li>
</ul>
</div>
<div id="mainContentContainer">
<asp:ContentPlaceHolder ID="cphBody" runat="server" />
</div>
Run Code Online (Sandbox Code Playgroud)
Content标记内的示例模块
<div id="container">
Inside a page
<script id="scriptToLoad" type="text/javascript">
alert('Something');
head.ready(function () { console.log('please print'); });
</script>
</div>
<div id="includeScripts">
../Files/Javascript/SomeModuleSpecificJs.js
../Files/Javascript/SomeModuleSpecificJs1.js
</div>
Run Code Online (Sandbox Code Playgroud)
我的想法是div在每个模块中设置一个id为"includeScripts"的模块,然后加载来自mastersheet中的方法的模块.此方法有效(显然需要一些tweeking)但是如果用户不断点击模块,最终将加载每个文件.如果是这样的话我也可以在主板上加载它们.
加载MasterPage时要运行JS
$navigation = $("#primaryNavigation").delegate('ul li a', 'click', function () {
$('#primaryNavigation').find('li').removeClass('current');
$(this).parent().addClass('current');
$('#mainContentContainer').load($(this).attr('href') + ' #container');
// Obviously …Run Code Online (Sandbox Code Playgroud) 我有一个想法是通过发送webservice调用来保持用户的会话活动,设置超时一段时间(比如15分钟左右)然后回想一下相同的方法.
问题是网络服务似乎不断发生.不像我想的那样每隔15分钟.
链接可以在这里找到:小提琴
代码在这里:
(function($, window, document, undefined) {
"use strict";
var methods,
settings,
timeout,
type = 'sessionPing';
methods = {
init: function () {
settings = { time: 5000};
methods.request.call(this);
},
request: function () {
console.log('just before clear' + timeout);
clearTimeout(timeout);
$.ajax({ type: 'POST',
url: '/echo/html/',
data: {
'html': 'Echo!'
},
success: function(data) {
timeout = setTimeout(methods.request(), settings.time);
console.log('in success ' + timeout);
},
dataType: 'html'
});
}
};
$.sessionPing = function(method) {
// Method calling logic
if …Run Code Online (Sandbox Code Playgroud) 我正试着让Mongo跑步.
我安装了包管理器Homebrew
然后我使用了Mongo站点上的命令:
$ brew update
$ brew install mongodb
Run Code Online (Sandbox Code Playgroud)
这似乎安装正确.
我输入mongo了一个新的终端窗口并收到以下错误:
MongoDB shell version: 2.0.1
connecting to: test
Thu Dec 15 09:37:25 Error: couldn't connect to server 127.0.0.1 shell/mongo.js:84
exception: connect failed
Run Code Online (Sandbox Code Playgroud)
所以我接着按照这里的说明进行操作
跑mongod,这是结果:
mongod --help for help and startup options
Thu Dec 15 09:38:49 [initandlisten] MongoDB starting : pid=7364 port=27017 dbpath=/data/db/ 64-bit host=Mike-Fieldens-iMac.local
Thu Dec 15 09:38:49 [initandlisten] db version v2.0.1, pdfile version 4.5
Thu Dec 15 09:38:49 [initandlisten] git version: …Run Code Online (Sandbox Code Playgroud) 给出以下简单的html:
<div class="someContainer">
<h5>Some other information</h5>
</div>
Run Code Online (Sandbox Code Playgroud)
以下Backbone视图:
var view = Backbone.View.extend({
events: {
'click .someContainer': performAction
},
performAction: function (evt) {
// Do things here
}
});
Run Code Online (Sandbox Code Playgroud)
我发现自己做了以下一些代码,这对我来说似乎是一种代码味道.有什么我做错了或有更好的方法来做到这一点?
...performAction: function (evt) {
// Check to see if the evt.target that was clicked is the container and not the h5 (child)
if ($(evt.target).hasClass('someContainer')) {
// Everything is ok, the evt.target is the container
} else {
// the evt.target is NOT the container but the child element so...
var $container …Run Code Online (Sandbox Code Playgroud) 对于任何Oracle DBA来说,这应该是一个非常简单的问题.
我刚开始使用新的应用程序,并且我要求查看架构.我根本不熟悉Oracle或其命名约定.所以我向你提交以下内容:

我想知道:
给出以下数据结构
var things = [{ "name": "thing1", "sex": "male"},
{ "name": "thing2", "sex": "female"}];
Run Code Online (Sandbox Code Playgroud)
我希望能够搜索该对象数组并拉出一个特定的对象.
我目前编写了以下代码
function selectElementByName (name) {
var returnObject;
for (var i = 0; i < things.length; i++) {
if (things[i].name === name) {
returnObject = things[i];
}
}
if ( returnObject === undefined) {
console.log("Object not found");
}
return returnObject;
}
Run Code Online (Sandbox Code Playgroud)
JsFiddle可以在这里找到
有更有效的方法吗?
我正在使用LINQPad运行以下查询:
var pds = (from p in Projects
group p by p.FiscalYearVariables.FiscalYear into grouped
where grouped.Count() > 0
select new {
fiscalYear = grouped.Key,
projectDetails = grouped.SelectMany(a=>a.ProjectDetails),
Programs = (from pwbs in Programs.SelectMany(a =>a.ProgramWbsNumbers)
let ds = pwbs.WbsNumbers.DisplayString
where pwbs.Programs.IsActive
&& (from w in WbsNumbers
where w.DisplayString.StartsWith(ds)
select w).Any()
select pwbs.Programs)
});
pds.Dump();
Run Code Online (Sandbox Code Playgroud)
我收到错误:
NotSupportedException:String.StartsWith方法仅支持可在客户端上计算的参数.
我不知道如何纠正这个错误.我需要得到每个Program地方的WbsNumber开头的WbsNumber包含内ProgramWbsNumbers是否有帮助.

给出以下obj:
var inputMapping = {
nonNestedItem: "someItem here",
sections: {
general: "Some general section information"
}
};
Run Code Online (Sandbox Code Playgroud)
我正在get通过传入字符串"nonNestedItem"或嵌套的情况为该数据编写函数"sections.general".我不得不使用一个eval,我想知道是否有更好的方法来做到这一点.
这是我到目前为止所做的,它可以正常工作.但改善!
function getNode(name) {
var n = name.split(".");
if (n.length === 1) {
n = name[0];
} else {
var isValid = true,
evalStr = 'inputMapping';
for (var i=0;i<n.length;i++) {
evalStr += '["'+ n[i] +'"]';
if (eval(evalStr) === undefined) {
isValid = false;
break;
}
}
if (isValid) {
// Do something like …Run Code Online (Sandbox Code Playgroud) 我想在Javascript Regex中匹配以下字符串
PC123456
这就是我所拥有的:
/^PC\d*/
Run Code Online (Sandbox Code Playgroud)
这适用于每个实例减去一个带有空格的"PC",它可以正常工作但它应该失败.例:
PC 123456
那会失败.为了使第二个条件失败,我需要添加什么?
我正在使用jQuery库创建一个插件.
这里我将String.prototype存储在变量中,然后我使用此变量来扩展我的Sting对象.这工作正常.
// String Prototyping store in a variable
// Save bytes in the minified version of js
var StrProto = String.prototype;
String.prototype.toProperCase = function () {
return this.replace(/\w\S*/g, function (txt) {
return txt.charAt(0).toUpperCase() + txt.substr(1).toLowerCase();
});
};
// working fine
alert("yogesh kumar".toProperCase());
Run Code Online (Sandbox Code Playgroud)
在下一种情况下,我正在创建存储在abc变量中的m 函数xyz, 这也正常工作.
function xyz(x){
alert(x)
}
var abc = xyz;
// working fine
abc("yogesh kumar");
Run Code Online (Sandbox Code Playgroud)
在最后一种情况下,我将document.createElement存储在变量 标签中,并使用标签创建一个按钮.但这不起作用.
var tag=document.createElement;
$(document.createElement("button")).html("document.Element").appendTo("#myDiv");
// not working
$(tag("button")).html("tag").appendTo("#myDiv");
Run Code Online (Sandbox Code Playgroud)
请检查jsFiddle上的链接:
错误:
在Chrome中 …
javascript ×5
jquery ×3
asp.net ×2
c# ×2
linq ×2
backbone.js ×1
count ×1
database ×1
eval ×1
linq-to-sql ×1
master-pages ×1
mongodb ×1
performance ×1
printing ×1
prototypejs ×1
regex ×1
settimeout ×1
sql ×1
stateless ×1