2012-07-10 30 views
0

问题:正确数量不被显示在文本框中

在“回答的号码”文本框,它应该显示的号码1,但它不,它显示数字2和它的原因是显示此号码是在按钮更改之前,您选择了2个字母按钮,因此它在文本框中显示2,因为您之前选择了2个字母按钮。

现在,这是因为这段代码发生的事情:

$('.answertxt', context).val(context.find('.answerBtnsOn').length > 0 ? context.find('.answerBtnsOn').length : '');, 
$('.gridBtns').on('click', function()

,但我确实需要此代码。

我需要这段代码的原因是因为让我们说有7个字母按钮“AG”,你打开所有的字母按钮,文本框会显示数字“7”,但如果我改变主意,我想只显示5个字母按钮“AE”,然后文本框将从“7”变为“5”,因为现在只有5个按钮打开。这就是为什么我需要这个代码。

所以我的问题是,如果用户点击了“添加”按钮,我怎么能从添加显示在文本框中的行中的“答案数”列中的数字?

下面是我在那里想在文本框中显示的号码时“添加”按钮被点击的代码,但它是通过书面,因为"$('#btn'+gridValues).trigger('click');",并在该代码是

$('.answertxt', context).val(context.find('.answerBtnsOn').length > 0 ? context.find('.answerBtnsOn').length : '');, 

$('.gridBtns').on('click', function()

function addwindow(numberAnswer, gridValues, btn) { 

     $('#mainNumberAnswerTxt').val(numberAnswer); 
     $('#btn'+gridValues).trigger('click'); 

} 
+0

所以实际的问题是什么? – Qnan 2012-07-10 13:39:46

+0

@MikhailKozhevnikov如果你按照以下步骤操作,在你点击行内的“Add”按钮之前,看一下该行中的“Number of Answers”列,它表示“1”,但是当你添加它时,文本框会显示“2”,它会阻止b“1” – user1490145 2012-07-10 13:56:55

回答

0

我认为最重要的问题是:为什么你必须首先指定答案的数量和一组可能的答案?这是多余的。如果你想拥有这种冗​​余并且始终保持一致,你必须定义约束条件,例如将其中一个事物识别为主要事件 - 或者文本框应始终显示按下按钮的数量(因此为只读)或(不太可能),按下的按钮数量应始终等于文本框中的数字。

即使没有“添加”按钮,允许用户独立编辑这两个元素也会导致您描述的类型不一致。我的意思是,我可以输入“2”,然后继续并尽可能标记所有答案。

+0

这是因为在演示中,我做了不包括验证,在我的完整应用程序中,有一个验证,如果用户在文本框中输入2并且所选按钮的数量超出或小于文本框中的数字,则会显示警报。说实话,我正在考虑将它改为你所说的,只将它变成红色,并且每次选择一个按钮时,将它添加到文本框中。 – user1490145 2012-07-10 15:48:21

+0

我会改进我的代码/演示,然后尝试执行只读的文本框内容,然后再回复给您,如果此问题仍需要修复。如果没有问题,我会标记你的答案:) – user1490145 2012-07-10 15:57:54

0

我觉得你可以自定义属性添加到指定谁触发点击按钮,这样,当.gridBtns元素,在用户点击就可以使用$的.gridBtns元素(这).attr(“cutom attri bute name“)并使用此值来检查谁触发了该操作,并且您将根据该操作做出反应。

+0

你可以举个例子说明你的意思,所以我知道如何以及在哪里编码:) – user1490145 2012-07-10 13:57:39