在同一行同时检查两个复选框

时间:2017-11-29 01:51:55

标签: php checkbox

我知道这个问题已在此link中得到解答,但如果我只想查看其他复选框旁边的复选框,该怎么办呢。

就像这样

+-------------------------------+
|column1    | column2 |column3  |
+-------------------------------+
|check here |   ✓     |  ✓     |
+-------------------------------+
|butnothere |    □    |   □     |
+-------------------------------+

我已尝试过此功能

$('#chk1, #chk2').on('click', function(){
    var checked = $(this).is(':checked');
    $('#chk1, #chk2').attr('checked', checked);
});

但它检查了我的所有复选框。

+-------------------------------+
|column1    | column2 |column3  |
+-------------------------------+
|check here |   ✓     |   ✓    |
+-------------------------------+
|butnothere |   ✓     |   ✓    |
+-------------------------------+

这是我的html表(简短副本)。

<tr>
    <td width="20">
        <input id="chk1" type="checkbox">
        <input id="chk2" type="checkbox">
    </td>
</tr>

就像上面那样。

3 个答案:

答案 0 :(得分:3)

你有一个普通的Java类。所以,停止使用Android方法。只需使用常规的setter或构造函数。

例如,

public class B {
   private int productId; 
   public void setProductId(int id) { productId = id; }
}

public class B {
   private int productId; 
   public B(int productId) { this.productId = productId; }
}
public class A extends Activity {

    ...

    final B b = new B();

    LV_Data.setOnItemClickListener(new AdapterView.OnItemClickListener() {
    @Override
    public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
        int idProduct = (int) view.getTag();
        Toast.makeText(getApplicationContext(), idProduct + "", Toast.LENGTH_SHORT).show();
        Toast.makeText(getApplicationContext(), ((TextView) view.findViewById(R.id.tv_product_name)).getText().toString(), Toast.LENGTH_SHORT).show();
        Intent intent = new Intent(getApplicationContext(), GetDataList.class);

        b.setProductId(idProduct);
        // or B b = new B(idProduct); // but, you can't access this outside of the click listener

        }
    });

}

一旦失去此课程,您就会丢失b中的数据,但

答案 1 :(得分:0)

您可以使用SharedPreferences

以下是设置和从共享偏好设置中获取值的示例。

  1. 设置值

    SharedPreferences.Editor editor = getSharedPreferences("Use your prefered name", MODE_PRIVATE).edit(); editor.putInt("val", 1); editor.apply();

  2. 获取价值

  3. 要在非活动类中使用共享首选项,请执行以下步骤

    1. 在主要活动中为上下文创建静态变量。

      public static Context appContext;

    2. 在onCreate方法中初始化上下文

      public void onCreate() { appContext= getApplicationContext(); }

    3. 在同一个类中创建getter方法。

      public static Context getAppContext(){ return appContext; }

    4. 在您的java类中,您需要调用以下上下文方法。

      Context applicationContext = MyActivity.getAppContext();

    5. 使用PreferenceManager类获取SharedPreferences

      SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(applicationContext); int val = prefs.getInt("val", 0); // where 0 is the default value.

答案 2 :(得分:0)

使用构造函数

public class B{
    private int num;
    public B(int num){
       this.num = num;
    }
}

称之为

B b = new B(idProduct);