文本框中的数字需要工作

时间:2012-07-17 16:14:38

标签: javascript jquery

  

可能重复:
  Code is taking effect when it shouldn't be

我有一个功能,如果用户点击一个按钮,它将在文本框中显示一个值,并在点击'#btn'按钮后执行另一个功能的触发:

function addwindow(numberAnswer, gridValues, btn) { 
    $('#mainNumberAnswerTxt').val(numberAnswer).data('data-ignore',true);
    $('#btn'+gridValues).trigger('click');       
 }

现在我想做的是:

  1. 如果用户点击“添加”按钮,则将“答案数”列中的数字显示在文本框中,换句话说,从addwindow()函数执行此操作:

    $('#mainNumberAnswerTxt').val(numberAnswer).data('data-ignore',true);

  2. 如果用户点击了#btn+gridValues按钮,则在文本框中显示当前打开的按钮数量的数字,或者换句话说,执行此代码:

    if ($('#mainNumberAnswerTxt').data('data-ignore') != true) { $('.answertxt', context).val(context.find('.answerBtnsOn').length > 0 ? context.find('.answerBtnsOn').length : 0); }

  3. 问题是第1步工作正常,它会在用户点击“添加”按钮后显示文本框中“答案数”列中的数字。

    问题在于步骤2,在用户点击#btn+gridValues按钮后,当前打开的按钮数量没有显示正确的数字。它只是不会更改文本框中的数字。

    有谁知道为什么会这样,以及如何解决这个问题?

    样本:

    这是应用程序的demo。请按照以下步骤操作:

    步骤1:在左侧,您将看到一个绿色加号按钮,单击它并打开一个模态窗口。 第2步:在模态窗口中有一个搜索栏,输入“AAA”并提交搜索,你会看到一堆行出现。 第3步:在最后一行中,您会在“Number of Answer”列中看到它包含数字4,单击此行中的“添加”按钮,模态窗口将关闭。

    您将看到文本框中的数字4显示正常,这是您添加行时“答案数”列下行内的数字。

    但问题如下:

    步骤4:如果单击“打开网格”链接并选择按钮3,您将看到下面的字母按钮变为A-C,只打开字母“B”。

    在文本框中,它应该显示数字1,因为只打开了1个按钮,但是它没有显示这个数字,这就是我遇到的问题。

    如何解决这个问题?

1 个答案:

答案 0 :(得分:0)

您正在使用:

$('#mainNumberAnswerTxt').data('data-ignore')

使用.data(),您无需提及前缀data-。这应该改为:

$('#mainNumberAnswerTxt').data('ignore')