Javascript 函数中按id的jquery复选框

Javascript 函数中按id的jquery复选框,javascript,jquery,Javascript,Jquery,我有一个传递用户名的函数,并且复选框的ID就是这个名称,我试图让jquery通过ID来检查它,但是运气不好。复选框的ID字段由每个用户名调用,因此它需要找到由传入的“名称”调用的正确复选框并选中它 function send_new_message(name) { var html = new_message_form(); var div = $(html); //Set user clicked to checked //$("#dave").prop("checked", true);

我有一个传递用户名的函数,并且复选框的ID就是这个名称,我试图让jquery通过ID来检查它,但是运气不好。复选框的ID字段由每个用户名调用,因此它需要找到由传入的“名称”调用的正确复选框并选中它

function send_new_message(name)
{
var html = new_message_form();
var div = $(html);

//Set user clicked to checked
//$("#dave").prop("checked", true);
$("#" + name).prop('checked', true);   

div.find('.send').click(function()
{
//Remove any error message
$("p.error").html('');

//Error check
var name = $("input.name").val();
var message = $("#message").val();

if(message==""){
$(".error").html('This filed is required!');
$("#message").focus();  
return false;  
}

//Send message to be processed
var post_data = name + "##@##" + message;
$.post(
'frames/process_messages.php',
{name: name, message: message},
function(result){
alert(result);
}
);      
//Close
//div.dialog('close');
});

div.dialog(
{
title:"Send New Message",
width: 450,
show: {
effect: "fold",
duration: 500
},
hide: {
effect: "explode",
duration: 500
},
close: function(){
$(this).dialog("destroy");
$(this).remove();       
}
});
}
HTML(PHP echo's)

。$users[$i]['name'].'
渲染

<tr><td><input class='names' id='dave' type='checkbox' name='names[]' value='3' /></td><td>dave</td></tr>
戴夫 似乎不起作用:(


谢谢您的帮助。

如果是ID,您可以执行以下操作:

$("#" + name).prop('checked', true);
并在更改采用布尔值的属性时使用
prop()

使用而不是更改运行时属性,如选中和禁用

$('#'+name).prop('checked', true);

您可以在文档中阅读更多有关差异的信息,我可以通过以下代码获得特定复选框的句柄:

var myCheckbox=$("input[name='checkbox_name']");
myCheckbox.change(function(){
     if(this.checked){
          alert('checked');
     } else {
          alert('unchecked');
     }
});

“+name+”
用双引号括起来,看看是否有效。
document.getElementById(name).checked=true;
嗯,你为什么不只用
$(“#”+name)
你忘了
div.find('.send')的末尾。单击(function()
它在div.dialog之前(我检查名称是否与警报(name)一起传递),但它没有检查文本框是PHP变量的ID吗?这是
标记之间的标记吗?我想如果您可以发布呈现的标记会更好。好的,现在这样做,我不明白为什么您的代码不应该工作:如果您改为运行行
$(“#dave”).prop(“checked”,true)
它能用吗?我不这么认为,我在chrome上,用crl-shift-J查看它的控制台。如果你是这个意思的话
var myCheckbox=$("input[name='checkbox_name']");
myCheckbox.change(function(){
     if(this.checked){
          alert('checked');
     } else {
          alert('unchecked');
     }
});