小编The*_*ter的帖子

简单的JavaScript复选框验证

我通常使用PHP,所以很遗憾没有一些基本的JS原则.这就是我想要完成的任务 - 我已经看过很多关于这个主题的帖子,但它们通常超出我的需要.

这是我的表格:

 <input type="checkbox" name="checkbox" value="check"  />
 <input type="submit" name="email_submit" value="submit" onclick="----??----"  />
Run Code Online (Sandbox Code Playgroud)

复选框是一个简单的"我同意".我希望按下提交按钮,只有选中该复选框才会提交.

事情是这样的:我想要简单,欺骗的方式 - 没有方法 - 只是那种形式的内联代码(假设它不会过长?).这不是一个公共页面,我只需要使用这种类型的验证快速而简单.如果未选中,则会抛出alert(); 如果它被检查它将通过邮件提交通过PHP并继续正常.

html javascript forms validation

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

PHP - 扩展类

我已经在面向对象的PHP中完成了大量的代码,但到目前为止,我的所有类都是"单数",我想你可以调用它.我正在改变几个类(有5个左右相同的方法)来扩展一个类(以摆脱重复的代码).我遇到了一些问题.

我试图访问父类中的方法,但您可以看到问题.

家长班:

 class DatabaseObject { 

     public static function find_all() {
        return self::find_by_sql("SELECT * FROM " . self::$table_name);
    }
}
Run Code Online (Sandbox Code Playgroud)

儿童班:

class Topics extends DatabaseObject {

    protected static $table_name = "master_cat";
    protected static $db_fields = array('cat_id', 'category');
    public $cat_id;
    public $category;

  }
Run Code Online (Sandbox Code Playgroud)

代码尝试从php/html文件访问此表中的所有信息:

$topics=Topics::find_all();

foreach($topics as $topic):
    echo $topic->category;
endforeach; 
Run Code Online (Sandbox Code Playgroud)

正如您所看到的,大多数代码尚未合并到新的处理方式中.我需要更改self :: $ table_name,它不再以我正在做的新方式工作.我将有大约5个类扩展这个对象,所以最好的编码方式是什么,所以我可以用一个方法访问不同的表(而不是在5个不同的类中包含这个精确的find_all()方法.

php extends class object-oriented-database

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

手势听众onFling不代理一致

更新:请参阅赏金以了解扩展问题.

我有一个GestureDetector设置ListView.ListView是一个完整的片段,它来自窗口的一侧并部分覆盖另一个片段.我想让用户能够将其轻扫(即Wunderlist是右侧此功能的一个很好的例子).

这是我的设置:

    gestureListener = new View.OnTouchListener() {
        public boolean onTouch(View v, MotionEvent event) {

            if (gestureDetector.onTouchEvent(event)) {
                return true;
            }

            return false;
        }
    };
    listView.setOnTouchListener(gestureListener); 
Run Code Online (Sandbox Code Playgroud)

听众本身:

public class GestureListener extends SimpleOnGestureListener {

        private static final int SWIPE_MIN_DISTANCE = 180;
        private static final int SWIPE_THRESHOLD_VELOCITY = 50;

        @Override
        public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX,
                float velocityY) {

            try {
                if (e2.getX() - e1.getX() > SWIPE_MIN_DISTANCE
                        && Math.abs(velocityX) > SWIPE_THRESHOLD_VELOCITY) {

                    FragmentManager fma = getActivity() …
Run Code Online (Sandbox Code Playgroud)

android listview gestures

11
推荐指数
1
解决办法
3065
查看次数

重新添加相同的片段后,片段中的元素无法正常工作

更新:我发现标头不是唯一受影响的东西,但listeners片段中的其他元素没有被初始化.(比如FAB).唯一正常运行的东西是内置的任何东西adapter(即ListView行)

问题:打开导航抽屉,单击列表项打开一个新Fragment的同一个Activity.再次打开导航抽屉,单击应该简单替换现有的相同项目,FragmentFragment打开时,所有以Java编程设置的元素(文本,颜色,侦听器)都不会更改/添加到Fragment.视图只是默认xml布局.我已经证实了Log.d这,设置这些东西的代码正在运行的时间.(如果你打开一个不同的Fragment,然后回到原来的,一切正常)

确认原因: 更改此内容时:

    compile "com.android.support:appcompat-v7:25.0.1"
    compile 'com.android.support:design:25.0.1'
Run Code Online (Sandbox Code Playgroud)

    compile "com.android.support:appcompat-v7:25.1.0"
    compile 'com.android.support:design:25.1.0'
Run Code Online (Sandbox Code Playgroud)

(如果只更改了其中一个库,那么哪个库仍然无关紧要)

我已经确认更改这两个库是问题(在第二个应用程序中也确认了这个问题 - 并且更改此代码,具有完全相同的结果)

我的问题是,为什么会发生这种情况以及如何解决?

原始问题的代码和更详细的描述:

                FragmentTransaction tItems = fm.beginTransaction();
                ListFragment mFrag = new PlannerFragment();
                tItems.replace(R.id.main_frag, mFrag, TAG_CALC_FRAGMENT);
                tItems.commit();
Run Code Online (Sandbox Code Playgroud)

我的抽屉里有大约4个选项都可以打开这个片段,但在每个选项之前,我设置了一个像这样的全局变量:

MyApp.PlanType = "highbal";
MyApp.PlanType = "lowbal";
etc.
Run Code Online (Sandbox Code Playgroud)

基于PlanType值(上面),Fragment加载了不同的数据(但是,在完全相同的xml布局中).它只是ListView一个标题.

这个Fragment,(PlannerFragment …

android listview android-appcompat android-fragments

11
推荐指数
1
解决办法
631
查看次数

如何在Android中正确打开/关闭SQLite数据库

我有一个功能正常的应用程序,不会强制关闭或崩溃.但是当我看LogCat时,它偶尔会给我这个:

05-20 15:24:55.338: E/SQLiteDatabase(12707): close() was never explicitly called on database '/data/data/com.---.--/databases/debt.db' 
05-20 15:24:55.338: E/SQLiteDatabase(12707): android.database.sqlite.DatabaseObjectNotClosedException: Application did not close the cursor or database object that was opened here
Run Code Online (Sandbox Code Playgroud)

一点点下来......

05-20 15:24:55.338: E/System(12707): Uncaught exception thrown by finalizer
05-20 15:24:55.338: E/System(12707): java.lang.IllegalStateException: Don't have database lock!
Run Code Online (Sandbox Code Playgroud)

我不确定何时应该打开和关闭我的数据库?

我有一个主要活动,只是一个闪屏.然后它进入一个使用来自DB的信息调用ListView的活动; 所以在这个 DB首次打开的活动中.

还有一个其他活动,其中需要DB与ListVeew分支.什么时候我应该打开和关闭这个?Word似乎是我只需要打开一次,然后在应用程序"暂停","停止"或"销毁"时关闭.

如果是这种情况,我在哪里将db.close()方法放在启动屏幕主要活动中,其中onStop等位于何处?或者与打开数据库的活动相同的活动?或..还有另一个地方吗?

更新:

这是错误指向的代码行:

public void open() throws SQLException {
    database = dbHelper.getWritableDatabase();
}
Run Code Online (Sandbox Code Playgroud)

database sqlite android

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

使用现有架构/模型中的MySQL Workbench创建数据库

我用它构建了一个数据库模式(或模型?)MySQL Workbench.我现在想把它变成一个真正的数据库.

我已经看到了正向和反向工程师选项,如果我需要的话,我找不到明确的答案.

如何将其转换为实际数据库?

mysql mysql-workbench database-schema

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

PHP - Strtotime - 添加小时

我有这个变量:

$timestamp = strftime("%Y-%m-%d %h:%M:%S %a", time ());
Run Code Online (Sandbox Code Playgroud)

我只想添加三个小时并回复它.

我已经看到了你可以用60*60*3方法或硬代码"+ 3小时"来理解单词的方式.

获得此结果的最佳方法是什么?

php strtotime

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

在ActionBar中使用ProgressDialog(Android)

我正在尝试将ProgressDialog移动到我的ActionBar.

我知道如何将它放在动作栏中并为其设置动画(我认为),如下所示:

在progress.xml中

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    android:weightSum="1" >

    <ProgressBar
        android:id="@+id/progress"
        style="?android:attr/progressBarStyleSmall"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" >
    </ProgressBar>

</LinearLayout>
Run Code Online (Sandbox Code Playgroud)

在menu.xml中

<item
    android:id="@+id/Refresh"
    android:icon="@drawable/ic_menu_refresh"
    android:showAsAction="always"
    android:title="Refresh"/>
Run Code Online (Sandbox Code Playgroud)

在我的活动中

    case R.id.Refresh:
        item.setActionView(R.layout.progress);
        return true;
Run Code Online (Sandbox Code Playgroud)

这里是我目前的PD(在活动)onPreExecuteonPostExecute我的AsyncTask的:

// Pre  
dialog = new MyProgressDialog(---.this);
dialog.show(---.this);


// Post    
dialog.dismiss(---.this);
Run Code Online (Sandbox Code Playgroud)

那么如何移动它以便激活操作栏指示器onPreExecute然后停止onPostExecute

编辑:当你第一次加载一个活动(或做一些需要PD激活的东西)时,我不仅要寻找刷新,而且还要寻找"加载"指示器.它应该默认隐藏.

android progressdialog android-actionbar

9
推荐指数
1
解决办法
2174
查看次数

中心ToggleButton图像 - 没有文字

这是我的ToggleButton:

<ToggleButton
            android:id="@+id/bSmenuTopItems"
            android:layout_width="wrap_content"
            android:layout_height="48dp"
            android:background="@drawable/master_button_selector"
            android:drawableLeft="@drawable/flame_icon" />
Run Code Online (Sandbox Code Playgroud)

我在这张图片中没有文字,我需要一个ToggleButton由于活跃状态.

编辑:我认为问题被误解了.Toggle Button(flame_icon)内部有一个drawable ,它被设置为background.我希望它集中在一起.没有文字,只有图像.我需要一个切换按钮,因为我需要选择一个活动状态.

只有drawableLeft,drawableRight,drawableTop,等我想draweableMiddle这似乎并不exisit.

android button togglebutton

9
推荐指数
2
解决办法
8841
查看次数

FireFox中的'contenteditable = true`身高问题

当有空divcontenteditable="true":

CSS:

[contenteditable="true"] {
    border: 1px dashed #dedede;
    padding: 3px;
}
Run Code Online (Sandbox Code Playgroud)

HTML:

<div contenteditable="true">
    <!-- blank by default -->
</div>
Run Code Online (Sandbox Code Playgroud)

在IE和Chrome中,它显示高度,就像具有小填充的普通输入字段一样.在Firefox中,它只显示我在样式中添加的3px填充.没有,它崩溃,只有边界高.

你知道这是不是Firefox的bug?你能建议一种处理它的方法吗?

html css firefox contenteditable

9
推荐指数
1
解决办法
2048
查看次数