可能重复:
代码在不应该生效时生效
我有一个函数,如果用户单击一个按钮,它将在文本框中显示一个值,并在单击“#btn”按钮后触发另一个函数:
function addwindow(numberAnswer, gridValues, btn) {
$('#mainNumberAnswerTxt').val(numberAnswer).data('data-ignore',true);
$('#btn'+gridValues).trigger('click');
}
现在我想做的是:
如果用户单击“添加”按钮,则将“答案数量”列中的数字显示到文本框中,或者换句话说,从
addwindow()
函数中执行此操作:$('#mainNumberAnswerTxt').val(numberAnswer).data('data-ignore',true);
如果用户单击了一个
#btn+gridValues
按钮,则在文本框中显示当前打开的按钮数量的数字,或者换句话说,执行以下代码:if ($('#mainNumberAnswerTxt').data('data-ignore') != true) { $('.answertxt', context).val(context.find('.answerBtnsOn').length > 0 ? context.find('.answerBtnsOn').length : 0); }
问题是第 1 步工作正常,它确实在用户单击“添加”按钮后显示文本框中“答案数量”列中的数字。
问题是第 2 步,在用户单击按钮后,它没有显示当前打开多少个按钮的正确数字。它#btn+gridValues
只是不会更改文本框中的数字。
有谁知道为什么会发生这种情况以及如何解决?
演示:
这是该应用程序的演示。请按照以下步骤操作:
第 1 步:在左侧,您会看到一个绿色的加号按钮,单击它会打开一个模式窗口。第2步:在模态窗口有一个搜索栏,输入“AAA”并提交搜索,你会看到一堆行出现。第 3 步:在最后一行中,您会在“答案数量”列下看到它包含数字 4,单击该行中的“添加”按钮,模式窗口将关闭。
您将看到文本框在文本框中显示数字 4,这很好,因为这是添加行时“答案数”列下的行中的数字。
但问题如下:
第 4 步:如果单击“Open Grid”链接并选择按钮 3,您将看到下面的字母按钮变为 AC,仅打开字母“B”。
在文本框中它应该显示数字 1,因为只有 1 个按钮被打开,但它不显示这个数字,这就是我遇到的问题。
如何解决这个问题?