0

これは奇妙な質問かもしれません。現在、HTML でいっぱいの変数があり、jQuery (または JS) を使用して、その変数をチェックボックス付きの入力で検索し、情報を返したいと考えています。

そう:

alert($(this).parent().parent().html())
var thisIsThat = $(this).parent().parent().html();
alert(thisIsThat)
var Awesome = $(thisIsThat).find('input:checked');

そして、その変数を取得した後、ajax 呼び出しが成功した後、その中の特定の属性を次のように変更したいと考えています。

$(Awesome).attr('value', 'false');

現在、「Awesome」は何も返さないため、必要に応じて属性を変更できません。私も間違った方向に進んでいる可能性があります。アドバイスをいただければ幸いです。

4

3 に答える 3

3

これを使って

var thisIsThat = $(this).parent().parent();
alert(thisIsThat)
var Awesome = $(thisIsThat).find('input:checked');

この場合thisIsThatはオブジェクトであり、そのオブジェクトを使用して何でも見つけることができます

于 2012-09-28T12:49:53.923 に答える
0

これは、チェックボックスを正常に見つけてチェックを外す文字列から実行される同じ基本的な考え方を示す例です。

<div id="out"></div>​
<script>
    var htmlStr = '<div><input type="checkbox" checked="checked"/></div>';
    var temp = $(htmlStr);
    var cb = temp.find("input:checked");
    cb.attr("checked",false);
    jQuery("#out").append(cb);
</script>

jsfiddle

私が賭けている問題は、チェックボックスを手動でチェックしていることです。これを行うと、DOM属性は更新されません。

これが問題を示すための基本的な例です。

<div id="one">
    <input type="checkbox" />
</div>
<button>Tell</button>​

<script>
    function tellMe(){
        var myDiv = jQuery("#one");
        var html1 = myDiv.html();
        console.log(html1);
    }

    jQuery("button").click(tellMe);  
</script>

上記のコードのこのフィドルを見てください。

コンソールを開き、ボタンをクリックします。チェックされていないことがわかります。チェックボックスをオンにしてもう一度ボタンをクリックすると、チェックボックスがオンになっている場合でも同じhtmlが出力されます。

于 2012-09-28T12:53:51.500 に答える
-3

変化する

var Awesome = $(thisIsThat).find('input:checked');

var Awesome = $(thisIsThat).find('input[type=checked]');

now loop over it

Awesome.each(function(){
  if($(this).is(':checked'))
    {
     $(this).attr('checked',false);
    }
});
于 2012-09-28T12:41:31.963 に答える