今天,当我随机阅读O'Reilly书中的JavaScript模式时,我发现了一件有趣的事情(第27页供参考).
在Javascript中,在某些情况下,如果大括号的起始位置不同,则会有所不同.
function test_function1() {
return
{
name: 'rajat'
};
}
var obj = test_function1();
alert(obj); //Shows "undefined"
Run Code Online (Sandbox Code Playgroud)
而
function test_function2() {
return {
name: 'rajat'
};
}
var obj = test_function2();
alert(obj); //Shows object
Run Code Online (Sandbox Code Playgroud)
有没有其他语言有这种行为?如果是这样,那么我肯定要改变我的习惯.. :)
我主要关注PHP,C,C++,Java和ruby.
javascript language-agnostic programming-languages language-design
我经常遇到这个问题..
让我们说..在博客应用程序中,我需要通过电子邮件发送所有活跃用户..
我所做的是在用户上写一个findAll,其上一次登录的条件大于某个值...并获取所有用户对象...然后通过所有用户模型对象运行foreach并将数据存储在一个数组中,然后使用数组..
换句话说,后端正在发生的事情是我正在加载整个模型,而我只需要0.5%那些信息,然后运行一个脏代码来获取数组中的值,然后用它来处理..
性能和脏代码不是很糟糕..
现在我能想到的其他方法是使用commandBuilder和编写查询,然后运行相同的脏代码来获取数组中的值.解决了性能问题.但是正如人们所说的在mvc框架中编写sql,并不是一个好主意.
我真正想要的...一些类似的函数,如果它是一个列,则给出数组中的列值,或者如果有多列,则将列名作为索引的数组.
所以我想要做的是通过扩展ActiveRecord或类似的东西来实现它,我想要检查的是,是否有人已经实现了类似的东西,或者有一些想法... :)
我正在阅读学习jQuery 1.3(Jonathan Chaffer和Karl Swedberg)和排序表,他们.get()在调用之前使用过.sort(),并说
我们需要将jQuery对象转换为DOM节点数组.尽管jQuery对象在许多方面都像数组一样,但它们没有任何可用的本机数组方法,例如.sort().
码:
$("#sort").click(function() {
var posts = $("#posts_div .post");
posts.sort(function(a, b) {
return ($(a).text()) > ($(b).text());
});
$.each(posts, function(index, post) { $("#posts_div").append(post); });
});?
Run Code Online (Sandbox Code Playgroud)
所以我尝试不使用它就这样做.get(),但是即使没有.get()最新的jQuery,它仍然有用,但是没有使用1.3
所以做了一些小提琴来说清楚
所以很明显早期的jQuery对象没有使用.sort()与Javascript数组相同的功能?但现在他们有......
所以我的问题是jQuery对象还没有支持哪些功能,所以我们可以记住在使用之前转换为Javascript数组?
我有一个textview,其中我正在显示一个论坛帖子的内容,使用rte在网站上输入,内容涉及图像,类型web url和类型Base64.. Html.fromHtml的默认实现替换所有img标签小广场..
我在SO上寻找使用Html.fromHtml方法从url加载图像的解决方案,结果有办法做到这一点,我们可以将ImageGetter传递给函数..我发现这个很棒的答案实现了url fetch部分,但是这个失败和崩溃应用程序时,内容具有的图像Base64 ..
我看了一种为Base64src 创建图像的方法,但没有一个解决方案正在工作,如果有人已经实现了整个解决方案,那就太棒了.如果有人只有Base64部分请提供我将整合两个..
我有两个表table1,table2每个表都有一个列email与不同的其他列一起命名.我想要的是一个验证器,它在email两个列的字段中查找唯一性.我找到了一个检查多个SAME表列的扩展.如何扩展它以使其适用于多个列?
我试图在模型的beforeSave()方法中保存另一个模型的记录.我期望save()方法调用另一个模型beforeSave(),但它没有.它是一个bug还是我只是错过了什么?这是一些代码.
运营模式
public function beforeSave(){
if(parent::beforeSave()){
if($this->isNewRecord){
$this->creation_date=$this->modification_date=time();
$cur=Currencies::model()->find('LOWER(short)=?',array('usd'));
if($cur->id!=$this->currency_id){
$conv_cours=Currencies::model()->findByPk($this->currency_id);
$this->ammount_usd=round(($this->ammount*$conv_cours->buy)/$cur->sell,4);
}else{
$this->ammount_usd=$this->ammount;
}
}else{
$this->modification_date=time();
}
$opType=OperationType::model()->findByPk($this->operation_type);
$log=new ActionLogs;
$log->comment=Yii::app()->user->name.' ??????? '.$opType->name;
/*$log->logtime=time();
$log->user_id=Yii::app()->user->id;*/
$v=1;
$log->save ();
return true;
}else{
return false;
}
}
Run Code Online (Sandbox Code Playgroud)
和另一个模型之前保存()
public function beforeSave(){
if(parent::beforeSave()){
if($this->isNewRecord){
$this->logtime=time();
$this->user_id=Yii::app()->user->id;
}
return true;
}else{
return false;
}
Run Code Online (Sandbox Code Playgroud)
} 谢谢.
我有一个非常奇怪的问题,我有一个标记,正在以奇怪的方式处理chrome(在mac,windows和ubuntu-chromium上测试).
我已经创建了一个简单版本的情况..
<h3>First Part<span>Content in Span</span></h3>?
Run Code Online (Sandbox Code Playgroud)
Chrome正在添加额外的报价First Part,而在任何其他浏览器中都没有(在Firefox上测试,等等)
在Chrome中:

在Firefox中:

我需要改变这个功能
public function getScripts($page, $section){
$data = Yii::app()->db->createCommand()
->select('*')
->from('scripts')
->where("page_id='$page' and section_id='$section'")
->queryAll();
return $data;
}
Run Code Online (Sandbox Code Playgroud)
进入MySQL的商店程序.我如何在Yii for MySQL中执行此操作.
我需要将magento可配置产品选项下拉列表转换为可选择的链接或类似可选链接的单选按钮..有一些付费主题提供它,但如何做到这一点我的购物者主题是不可用的任何地方..
我想要的是这样的东西,而不是默认的下拉菜单..

我疯狂地想弄清楚如何获得底部textarea的价值.我是jquery/javascript的新手,我确定是问题,我已经尝试了几个小时来找出一个工作代码组合来检索它.
我试图在第一次更改时收集这两个表行的底部文本区域的值.我可以在改变时获得第一个textarea值,但是当对顶部textarea进行更改时,我需要底部值的值.一旦我能够解决这个问题,我需要编写一个函数来在底部更改时获得顶部,我确定一旦获得初始解决方案,我就能确定如何反转该过程.
tableRow类和id名称不是必需的我在测试过程中添加了那些.
任何帮助将不胜感激.
// HTML
<tr class="years" id="yearStart">
<td class="fieldlabel">Year Range Start</td>
<td colspan="7" class="textareacontainer">
<textarea class="multiedit-field" name="yearRangeStart-<?php echo $k->id; ?>">
<?php echo $k->yearRangeStart; ?></textarea>
</td>
</tr>
<tr class="years" id="yearEnd">
<td class="fieldlabel">Year Range End</td>
<td colspan="7" class="textareacontainer">
<textarea class="multiedit-field" name="yearRangeEnd-<?php echo $k->id; ?>">
<?php echo $k->yearRangeEnd; ?></textarea>
</td>
</tr>
Run Code Online (Sandbox Code Playgroud)
// jQuery的
$("#yearStart textarea").live("change", function(){
yearStart = $(this).val();
yearEnd = $(this).next('tr.years').find('textarea').val();
$.post("http://localhost:8888/...",
{
yearStart: yearStart,
yearEnd: yearEnd
},
function(data,status){
alert("\nEnd: " + yearEnd + "\nStart: " + yearStart + "\nData: …Run Code Online (Sandbox Code Playgroud) 我在表中有很多列需要根据某些值进行检查,如果找到匹配则需要替换值.
所以基本上我正在寻找一个查询,它将列名作为变量的一部分并循环遍历表并更新列值(如果匹配).
我可以用PHP做到这一点,拥有尽可能多的查询列..但这是我不想要的..
ps我知道这是一个糟糕的设计,在正常情况下,这种要求永远不会发生,但遗憾的是它就是它的本质.
yii ×4
php ×3
html ×2
javascript ×2
jquery ×2
mysql ×2
activerecord ×1
android ×1
arrays ×1
function ×1
magento ×1
sql ×1
validation ×1