Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/423.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何根据选择的选项执行jquery代码_Javascript_Jquery_Html_Jsfiddle - Fatal编程技术网

Javascript 如何根据选择的选项执行jquery代码

Javascript 如何根据选择的选项执行jquery代码,javascript,jquery,html,jsfiddle,Javascript,Jquery,Html,Jsfiddle,我有一把叉子 请按照以下步骤使用小提琴中的小应用程序: 点击“开放网格”链接并选择一个编号按钮。下面将显示一组字母按钮。如果您开始选择答案按钮,则它们将变为绿色,并且在上面的“答案数”文本框中,将开始计算您已打开的按钮数 但是,如果取消选择所有应答按钮,以致没有任何应答按钮打开,则上面的文本框不会显示0,而是显示1 这是因为以下代码: var container = $btn.closest(".optionAndAnswer"); // here the zero gets assigned

我有一把叉子

请按照以下步骤使用小提琴中的小应用程序:

  • 点击“开放网格”链接并选择一个编号按钮。下面将显示一组字母按钮。如果您开始选择答案按钮,则它们将变为绿色,并且在上面的“答案数”文本框中,将开始计算您已打开的按钮数

  • 但是,如果取消选择所有应答按钮,以致没有任何应答按钮打开,则上面的文本框不会显示
    0
    ,而是显示
    1

  • 这是因为以下代码:

    var container = $btn.closest(".optionAndAnswer");
    // here the zero gets assigned
    var answertxt = $(".answertxt", container);
    var numberison = $(".answerBtnsOn", container).length;
    if (answertxt.val() == 1 && numberison == 0) {
        numberison = 1;
    }
    answertxt.val(numberison);
    
    我已经在JSFIDLE中以块大写字母包含了一条注释,以说明这段代码在FIDLE中的位置

    我想做的是,如果从网格中选择的选项是“真或假”或“是或否”,则执行上面的代码,如果没有突出显示回答按钮,则文本框值为1。如果是任何其他选项,则如果未选择任何应答按钮,则文本框值应为0


    如何实现这一点?

    修复了它,正如您在下面看到的,我正在检查所选输入类型是否为真/假是/否,并由此确定要运行的代码:

    // ... 
    var maxRowValue = $('.gridTxt', container).val();
    if (maxRowValue === 'True or False' || maxRowValue === 'Yes or No') {
        if (answertxt.val() == 1 && numberison == 0) {
            numberison = 1;
        }
    }
    answertxt.val(numberison);
    

    修复了它,正如您在下面看到的,我正在检查所选输入类型是否为true/false yes/no,并由此确定要运行的代码:

    // ... 
    var maxRowValue = $('.gridTxt', container).val();
    if (maxRowValue === 'True or False' || maxRowValue === 'Yes or No') {
        if (answertxt.val() == 1 && numberison == 0) {
            numberison = 1;
        }
    }
    answertxt.val(numberison);