我想在单击div时从存储的var中删除文本。我的代码看起来像这样:
$(document).ready(function() {
var allids = '';
$("#artistselect").change(function() {
var id = $(this).children(":selected").attr("id");
allids.push($(this).children(":selected").attr("value"));
selectid = "#" + id;
echoid = "#artistecho" + id;
$(echoid).show(300);
$(selectid).hide(0);
$("input[name=artistslist]").val(allids.join(", "));
alert(allids);
});
$(".remove").click(function() {
var removeid = $(this).attr("value");
var allids = allids.replace(removeid, '');
$('input[name=artistslist]').val(function(index, value) {
return value.replace(removeid, '');
});
alert(allids);
});
});
此功能正常运行:
$("#artistselect").change(function() {
我有这个功能的问题:
$(".remove").click(function() {
它不会修改var allids,也不会给我警报(allid);
提前致谢。
答案 0 :(得分:0)
allid必须是数组,并且不应该使用$(" .remove")中的var再次对其进行解码。单击(function(){
$(document).ready(function() {
var allids = [];
$("#artistselect").change(function() {
var id = $(this).children(":selected").attr("id");
allids.push($(this).children(":selected").attr("value"));
selectid = "#" + id;
echoid = "#artistecho" + id;
$(echoid).show(300);
$(selectid).hide(0);
$("input[name=artistslist]").val(allids.join(", "));
alert(allids);
});
$(".remove").click(function() {
var removeid = $(this).attr("value");
allids = allids.replace(removeid, '');
$('input[name=artistslist]').val(function(index, value) {
return value.replace(removeid, '');
});
alert(newids);
});
});
答案 1 :(得分:0)
您应将 allids 定义为数组和选择& echoid 为变量。这是代码。
uint_fast32_t