2017-01-03 2 views
0

私はあなたが項目を行うことができますこのWebアプリケーションがあります。私が望むのは、チェックボックスをオンにすると、テキストフィールドがストロークされるということです。変更ボタンストライクバブルjavascript

[追加]ボタンを押すと、JavaScriptで新しい項目が作成されます。ここでチェックボックス(呼び出されたボタン)を押すと、テキストフィールドがストロークされます。どうすればこれを達成できますか?

ありがとうございます!

これは私のhtmlの一部であり、todoが来ています。

<div class="items"> 

       <h3>Items</h3> 

       <div id="itemList"> 
       </div> 

       <button id="addItem" >Add Item</button> 

      </div> 

これは新しいアイテム

function item(content, list) { 
    /* Global attributes */ 
    this.content = content; 
    this.checked = false; 
    this.id = 0; 
    this.settings = new Settings(); 
    this.element = $("<div>"); 
    /* Local attributes */ 
    var button = $("<input type='checkbox' Class='inputCheck'>"); 
     button.appendTo(this.element); 
    var text = $("<input type='text'>"); 
     text.appendTo(this.element); text.val(content); 
    var edit = $('<button>Edit</button>'); 
     edit.appendTo(this.element); 
    var deleteButton = $('<input type=\'image\' src=\'Images/trash.png\' height=\'20\' width=\'20\'>'); 
     deleteButton.appendTo(this.element); 
    var thisObject = this; 


    /* Appending item */ 
    list.addItem(this); 
    text.attr("disabled", true); 
} 

(編集)

のコンストラクタの私の一種である私は、追加のTODO項目ボタンを押したときに、この関数が呼び出されます。

$("#addItem").click(function(event){ 
    var newItem = new item("Default message", listSelected); 
}); 

このメソッドが呼び出されると、現在のオブジェクト(thisObjectという)のチェックボックスが反対に変更されます。ここでは、CSS text-decoration: line-through;を使用し、また、テキストが取り消し

button.click(function() { 
    thisObject.checked = button.is(":checked"); 
    //thisObject.text => strike 
}); 
+5

少なくともためのコードを置きます –

+1

これは無関係なコードブロックのように見えます。それらの間の接続は完全に欠落しています。これらの未定義の関数とオブジェクトは何ですか?なぜあなたのHTMLに 'select'を含めるのですか?これは明らかにその質問とは関係がありません。 – trincot

答えて

0

を取得し、あなたが提供されているコードは完全に表示されないはずですが、テキストが通じstrikedにします。

チェックボックスを使用すると、隣接するテキスト入力フィールド(HTML構造を使用)のテキストをこのようにして有効にすることができますinput[type="checkbox"]:checked + input[type="text"]

ストライクしたい要素にクラスを適用し、アプリケーションのJavascriptを使用して要素のクラスを操作する(ストライクまたは削除する)こともできます。

あなたはjQueryのを使用しているので、ここでチェックボックス(純粋なCSS)をチェックすることによって、またはボタン(ジャバスクリプト/ jQueryの)をクリックしてテキストを打つことができる方法の例だ - http://codepen.io/anon/pen/PWoaYZ

+0

あなたがcodepen経由で与えた例が私のために働いた、ありがとう! –