这似乎应该是直截了当但我是Javascript的新手,所以请耐心等待.
我想要包含一个脚本文件,但仅限于页面上存在元素.我试过了:
var element = $('.customelement');
if(element.length() > 0) {
$('head').append('<script language="javascript" src="custom.js"></script>');
}
Run Code Online (Sandbox Code Playgroud)
但这不起作用并返回错误:
未捕获的TypeError:对象[对象对象]的属性"长度"不是函数
我发现很多帖子说这应该有用,所以我有点难过.我还想知道是否有更好的方法来做到这一点?
我对如何在SilverStripe 3中使用RESTful服务器API感到有点困惑.我刚刚开始学习,以下内容使我感到困惑.
我们网站上的所有内容都存储在数据库中.作为DataObject类的子类的每个类在我们的数据库中都有自己的表.
这样一个类的每个对象都对应于该表中的一行 - 这是我们的"数据对象",即模型 - 视图 - 控制器的"模型".页面类型有一个数据对象,表示我们页面的所有数据.它不是直接从DataObject继承,而是继承自SiteTree.我们通常创建一个"Page"数据对象,并将其子类化为所有其他页面类型.这允许我们定义在我们网站的所有页面中一致的行为.
我这样做是为了设置页面,但现在我正在学习RESTful服务器API,它说要创建一个扩展DataObject的对象.
原谅我的无知,但扩展SiteTree不是一回事吗?
很困惑所以会欣赏一些启示.
首先我使用的是SilverStripe 2.4.7版.我正在使用的DataObject与DataObjectManager和另一个DataObject之间有一个has_one关系.我想在DataObjectManager的摘要字段中显示DataObject的名称,但我不断收到以下错误.
未捕获的异常:对象 - > __ call():"存储"上不存在'fortemplate'方法
我认为这是因为我有一个has_one关系,但我不确定.有没有人对我如何做到这一点有任何建议?
谢谢
我试图让ToggleButton工作,但我遇到了一些问题.它点击时似乎恢复到默认值,我导航到另一个屏幕.2.我尝试使用SharedPreferences将其isChecked()值转移到另一个活动,现在它崩溃了.
<ToggleButton
android:id="@+id/togBTN"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/homeBtn"
android:layout_centerHorizontal="true"
android:layout_marginTop="106dp"
android:text="Voice Alerts"
android:textOff="OFF"
android:textOn="ON" />
Run Code Online (Sandbox Code Playgroud)
上面的代码在我的xml文件中.下面的代码是onClickListener代码.
case R.id.togBTN:
SharedPreferences.Editor editor = preferences.edit();
editor.putBoolean("tgpref", tg.isChecked()); // value to store
editor.commit();
break;
}
Run Code Online (Sandbox Code Playgroud)
这段代码是我尝试检索值的地方
SharedPreferences preferences = getPreferences(MODE_PRIVATE);
boolean tgpref = preferences.getBoolean("tgpref", true); //default is true
if (tgpref = true) //if (tgpref) may be enough, not sure
{
speakValue = true;
}
else
{
speakValue = false;
}
Run Code Online (Sandbox Code Playgroud)
这是我得到的Logcat:
02-21 14:49:09.587: W/dalvikvm(483): threadid=1: thread exiting with uncaught exception (group=0x40015560)
02-21 14:49:09.597: E/AndroidRuntime(483): …Run Code Online (Sandbox Code Playgroud)