有点长,但我希望有人能提供帮助!我正在开发一个用于音乐创作调音的程序,基本上有两个工作流程:1) 按钮输入串,和 2) 直接数字比率输入。从一开始,我就有 2 个单选按钮来选择用户想要使用的方法。基本上,我称之为“输入”的变量只有一个区别:在工作流程 1) 中,它是多个数组的总和(基于按钮点击);在工作流程 2) 中,它基于用户给出的分子和分母。所有部分都单独工作,但当我在下面将它们组合在一起时不工作。
所以我的两个单选按钮:
<input type="radio" name="inputType" id="noteInput">Note Input
<input type="radio" name="inputType" id="ratioInput">Ratio Input
以及脚本中重要的地方:
function getInputSum(){
if ( $("#noteInput").checked ){
inputSum = reference
.SumArray(refOctave[getRefOctave()])
.SumArray(refNote[getRefNote()])
.SumArray(refAccidental[getRefAccidental()])
.SumArray(autoOffsetToA)
.SumArray(notes[getNote()])
.SumArray(chromatic[getChromatic()])
.SumArray(octave[getOctave()])
.SumArray(syntonic[getSyntonic()])
.SumArray(septimal[getSeptimal()])
.SumArray(undecimal[getUndecimal()])
.SumArray(tridecimal[getTridecimal()])
.SumArray(seventeen[getSeventeen()])
.SumArray(nineteen[getNineteen()])
.SumArray(twentyThree[getTwentyThree()])
.SumArray(twentyNine[getTwentyNine()])
.SumArray(thirtyOne[getThirtyOne()]);
} else if ( $("#ratioInput").checked ){
smallestTerms = reduce(inputNum,inputDen);
$("#num").text(smallestTerms[0]);
$("#den").text(smallestTerms[1]);
numArray = getArray(smallestTerms[0]);
denArray = getArray(smallestTerms[1]);
inputSum = reference
.SumArray(refOctave[getRefOctave()])
.SumArray(refNote[getRefNote()])
.SumArray(refAccidental[getRefAccidental()])
.SumArray(numArray)
.DiffArray(denArray);
}
}
当然,我遗漏了一些被调用的函数,但正如我所说,如果我将它们组合起来,似乎只有这样才行不通。如果我在 if 部分只保留 inputSum 计算时删除 if else,则程序的其余部分可以正常工作,等等。
想知道我是否遗漏了上面的简单内容?
使用 JQuery。
最佳答案
你的问题在这里 $("#noteInput").checked
jQuery 对象没有检查属性。
它是拥有它的底层 DOM 元素。
您可以使用 .prop()
访问它。
$("#noteInput").prop('checked')
关于javascript - 用于选择工作流程的单选按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51005652/