如何切换内容?

时间:2011-06-10 14:05:12

标签: javascript jquery

我非常希望toggle能够拥有x并且没有x

<td class="checkbox"> <input name="signed" type="checkbox" checked /> x </td>

例如参见JSFiddle

http://jsfiddle.net/littlesandra88/GMSCW/

按下提交时触发的代码是

$('form').live('submit', function(){
   $.post($(this).attr('action'), $(this).serialize(), function(response){
         // do something here on success
   },'json');
   return false;
});

我认为我必须采用

$(this).getElementByClass("checkbox").td.toggle('x');

checked仍应更新<input name="signed" type="checkbox" checked />

有谁知道怎么做?

5 个答案:

答案 0 :(得分:1)

将X包裹在一个范围内然后隐藏

<td class="checkbox"> 
      <input name="signed" type="checkbox" checked />
      <span id='toggleme'>x</span>
 </td>

 //change the visibility of the x
 $('#toggleme').toggle();

// check the checkbox
$('input[name=signed]').attr('checked', true);

答案 1 :(得分:1)

要检查jQuery中的复选框,请使用ELEMENT.attr("checked","checked")或jQuery 1.6方式ELEMENT.prop("checked", true)

答案 2 :(得分:1)

最好的想法,IMO,是在复选框旁边放<label>,然后用toggle$("input[type=checkbox] + label", this).toggle()

要更改复选框,其他用户提供的示例就可以了。

http://jsfiddle.net/w5nAr/

这假设您不想更改复选框,只需更改旁边的文本。如果你想要两者,这是另一个例子:

http://jsfiddle.net/w5nAr/4/

答案 3 :(得分:1)

尝试查看代码here,这是基于Bryan的工作。

答案 4 :(得分:0)

$({some identifier for your checkbox}).attr("checked",true)