0
我想我們jquery來檢測是否在同一組中的另一個文本框被選中。下面的代碼顯示了我在檢查高級框時如何檢索組名,並使用它來查看是否檢查了附帶的基本框。問題在於,無論基本複選框的情況如何,「basicTrue」總是被分配「未定義」。難以將變量插入jquery屬性標識
<div id="boxes">
<input style="text-align:center;" type="checkbox" name="group1" value="Basic">
<input style="text-align:center;" type="checkbox" name="group1" value="Advanced">
<input style="text-align:center;" type="checkbox" name="group2" value="Basic">
<input style="text-align:center;" type="checkbox" name="group2" value="Advanced">
</div>
$("#boxes").contents().find(":checkbox").bind('change', function(){
val = this.checked;
var $obj = $(this);
if($obj.val()=="Advanced"){
var group = $obj.attr("name");
var basicTrue = $('input[name=group][value="Basic"]').prop("checked");
if(basicTrue)
{
//Do stuff
}
else
{
$obj.attr('checked', false);
}
}
此代碼是概念證明我用來證明代碼格式化這樣的作品,它返回「組1」中的「基本設置」複選框的狀態。
var basicTrue = $('input[name="group1"][value="Basic"]').prop("checked");
我知道變量「group」被給出正確的名稱:group1例如。爲什麼在代碼中使用這個變量是不行的?
謝謝你,寫的問題後,抓住它一個變量不屬於一個字符串。不過,不需要添加引號。 – Rorrik 2013-02-15 23:38:17