如何使用Coldfusion json数据来匹配文本框输入和第二个文本框中的显示值

时间:2014-09-25 20:01:02

标签: jquery ajax json coldfusion

我的表单有一个名为txtMaterial的文本框,它有一个.txtmaterial类,另一个文本框叫做txtDescription。 当用户输入材料编号时,运行ajax查询并检查是否存在匹配项,如果匹配,则使用描述填充txtDescription文本框。

我有以下函数来搜索材质并以Coldfusion JSON格式返回数据:

$.ajaxSetup({ cache: false });

    $("#frmCreateClaimLine tbody").on("change", ".txtmaterial", function(){

        var row = $(this).closest("tr");
        var material = row.find("input.txtmaterial").val();


          $.ajax({
            type: "GET",
            url:"index.cfm?action=material.search_materials",
            cache: false,
            datatype: 'json',
            data:{
                material_id: material
            },
            success:function(result){
             console.log(result);
            }});

    });

console.log的结果是:

{ “ROWCOUNT”:1, “列”:[ “TC_MATERIAL”, “TC_DESCRIPTION”, “TC_LANGUAGE”], “DATA”:{ “TC_MATERIAL”:[ “000000000000061234”], “TC_DESCRIPTION”:[“温度计“],”TC_LANGUAGE“:[”E“]}}

编辑: 这是我的疑问:

<cfquery name="qryGetMaterials" datasource="FR01CLDB" maxrows="100">
    SELECT
        TC_MATERIAL,
        TC_DESCRIPTION,
        TC_LANGUAGE
    FROM
        TBYE53_CSP_MATRL_LANGUAGE_DIM
    WHERE
        UPPER(TC_MATERIAL) = <cfqueryparam cfsqltype="cf_sql_varchar" value="#Trim(UCase(material_id))#">
    AND
        TC_LANGUAGE = <cfqueryparam cfsqltype="cf_sql_varchar" value="#UserLanguage#">
</cfquery>

<cfset theJSON = SerializeJSON(qryGetMaterials,true)>

<cfoutput>#theJSON#</cfoutput>

我无法弄清楚如何检查txtMaterial的值是否与返回的JSON数据中的值匹配,并在description字段中显示描述。

非常感谢任何帮助。

2 个答案:

答案 0 :(得分:1)

假设您的查询执行完全匹配,则无需检查值。只需验证ROWCOUNT是否大于零。如果是,您知道找到了匹配项。然后抓住第一行中的说明并更新文本字段

    if (result.ROWCOUNT > 0) {
        var descrip = result.DATA.TC_DESCRIPTION[0];
        // ... update text field
    }

另外,$.ajax电话中有一个小错字。它应该是dataType(资本&#34; T&#34;),而不是datatype

答案 1 :(得分:0)

改变这个:

success:function(result){
   console.log(result);    
}

对此:

success:function(result){
  if(material == result.DATA.TC_MATERIAL[0])
  {
    //PUT YOUR CODE HERE
  }
}

工作小提琴:http://jsfiddle.net/robertrozas/fwdwL5eh/2/