我有一些Jquery,我已经添加到其他Jquery的负载(一切正常),但它打破了我的其余代码。那里有一个错误,但我无法解决问题!
//Retrieve the customization summary area:
var summary = $('#customise-area-3 p');
//Use jQuery to select all the checkboxes with the name hardware that are checked.
$('input[type=checkbox][name=hardware\[\]]:checked').each(function(k,v) {
//Retrieve the value of the checkbox.
var checkboxValue = v.val();
//Add the checkbox value to the summary area:
summary.innerHTML += checkboxValue + '<br />';
});
这是在Wordpress中,所以我的Jquery的其余部分都采用以下样式:
jQuery(document).ready(function( $ )
{
$("#customise").click(function()
{
$(".entire_product").hide();
$(".customise").show();
});
});
为了让代码在Wordpress环境中运行,我已经完成了以下工作:
jQuery(document).ready(function( $ )
{
var summary = $('#customise-area-3 p').get(0);
$('input[type=checkbox][name="hardware[]"]:checked').each(function(k,v) {
//Retrieve the value of the checkbox.
var checkboxValue = v.val();
//Add the checkbox value to the summary area:
summary[0].innerHTML += checkboxValue + '<br />';
});
});
虽然这会阻止我的其余代码中断,但它实际上并没有做任何事情。即将所选复选框值添加到摘要中。
答案 0 :(得分:1)
你在选择器中使用\ slash是错误的,你在jQuery对象上使用innerHTML是wron
更改
$('input[type=checkbox][name=hardware\[\]]:checked')
要
$('input[type=checkbox][name="hardware[]"]:checked')
如果您需要检查以硬件开头的名称
,最好使用通配符$('input[type=checkbox][name^=hardware]:checked')
更改
summary.innerHTML += checkboxValue + '<br />';
要
summary[0].innerHTML += checkboxValue + '<br />';
答案 1 :(得分:0)
你的行
//Add the checkbox value to the summary area:
summary.innerHTML += checkboxValue + '<br />';
正在尝试设置一个对象的innerHTML,它看起来就是代码破解的地方
你应该使用
summary.html(checkboxValue + '<br />');
可能还有其他错误。但那是我能看到的唯一一个