函数在将变量值传递给TaffyDB查询时返回undefined

时间:2014-12-10 23:08:31

标签: javascript function taffydb

通过创建与TaffyDB集成的基本应用来练习一些JS。它存储医疗代码。我已经尝试过寻找解决方案,但似乎无法让它发挥作用。

目标:点击按钮,调用JS函数将innerHTML值传递给TaffyDB查询,该查询通过" code"进行搜索。然后它会向用户发出该代码的描述。

问题:我一直在"未定义"在调用函数时。

TaffyDB代码段

diagnosisCodes = TAFFY([
{code_id:'C001', code:'460', description:'Acute Nasopharyngitis(Common Cold)'},
{code_id:'C002', code:'708.2', description:'Urticaria Due to Cold and Heat'},
{code_id:'C003', code:'778.2', description:'Cold Injury Syndrome of Newborn'},
{code_id:'C004', code:'975.6', description:'Poisoning by Anti-Common Cold Drugs'},
]);

HTML片段:

<h2 class='code_categories' id='diagnosis_title'>Diagnosis Codes</h2>   
    <div id='diagnoses_COLD'>
        <h4 id='column_titles'>Cold-Related</h4>
            <button id='button' onclick="testing()">460</button>

JS功能:

function testing() {
//grab element value:
var obj = document.getElementById('button').innerHTML.value; 
//pass element value into TaffyDB query:
var dxDesc = diagnosisCodes({code:obj}).first().description;
//'alert' description of the code
alert(dxDesc);
}

此函数返回&#39; undefined&#39;。但是,var obj被正确分配了一个字符串值。此外,传递函数参数时查询工作正常。例如,此警报带有正确的描述:

function getDxDesc(name) {
var obj2 = diagnosisCodes({code:name}).first().description;
alert(obj2);
}

我的问题是让整个事情齐心协力。

1 个答案:

答案 0 :(得分:0)

.value用于获取用户输入的值。只需使用.innerHTML

var obj = document.getElementById('button').innerHTML; 

DEMO