Javascript 通过ajax传递表的一部分

Javascript 通过ajax传递表的一部分,javascript,jquery,coldfusion,Javascript,Jquery,Coldfusion,我使用ajax调用查询,但试图返回一个表。我已经能够让硬代码版本将文本返回到文本框中,但我正在尝试将其作为表返回。在此方面的任何帮助都将不胜感激 AJAX调用 $.ajax({ url: "proxy/TomorrowsDate.cfm", type: "post", dataType: "json", data: {date: Tmrwdate }, success: function (data) { console.log(data)

我使用ajax调用查询,但试图返回一个表。我已经能够让硬代码版本将文本返回到文本框中,但我正在尝试将其作为表返回。在此方面的任何帮助都将不胜感激

AJAX调用

$.ajax({
    url: "proxy/TomorrowsDate.cfm",
    type: "post",
    dataType: "json",
    data: {date: Tmrwdate },
    success: function (data) {
        console.log(data);
        console.log( $('#DueTmrw'));
        $('#DueTmrw').val(data.TEXT);
    },
    error: function (xhr, textStatus, errorThrown) {
        console.log(errorThrown);
    }
proxy/TomorrowsDate.cfm

<cfset result = {} /> 
<cftry> 
    <cfset session.dealerwork.tomorrowsdate = form.date > 
    <cfset result.date = form.date/> 

    <cfquery name="tomorrowTextArea"> 
        SELECT dbo.Dealer_Track_Work.id, dbo.Dealer_Track_Work.dealerID, dbo.Dealer_Track_Work.Date_Received, dbo.Dealer_Track_Work.op_id, dbo.Dealer_Track_Work.Date_Due, 
        dbo.Dealer_Track_Work.Date_Complete, dbo.Dealer_Track_Work.Completed_Late, dbo.Dealer_Track_Work.Closed_by, dbo.Dealer_Track_Work.Rmks, dbo.Dealer_Track_Work.Processing_Location, 
        dbo.Dealer_Track_Work.Item_Count, dbo.Dealer_Track_Dealers.id, dbo.Dealer_Track_Dealers.Name
        FROM dbo.Dealer_Track_Work, dbo.Dealer_Track_Dealers
        WHERE dbo.Dealer_Track_Work.dealerID = dbo.Dealer_Track_Dealers.id  
        AND Date_Complete IS NULL
        AND Date_Due = <cfqueryparam value="#session.dealerwork.tomorrowsdate#" /> 
        AND Date_Complete IS NULL
    </cfquery> 

    <cfset result.text = ''>
    <cfoutput query="tomorrowTextArea">
        <cfset result.text = result.text & "<tr>
                                 <td>#id#</td>
                                 <td>#tomorrowTextArea.name#</td>
                                 <td>#Item_Count# ITEMS</td>
                              </tr>" />
    </cfoutput>



    <cfcatch type="any"> 
        <cfset result.error = CFCATCH.message > 
        <cfset result.detail = CFCATCH.detail > 
    </cfcatch> 
</cftry> 

<cfoutput>#SerializeJSON(result)#</cfoutput>
这就是我试图在页面上显示信息的方式:如果我使用它,它不会显示任何内容,而是显示正确的结果,就像html文本一样,而不是实际的表。如何将这些行显示为通过ajax的表

我尝试过的所有事情:

<tbody>


     <span id="DueTmrw" name="DueTmrw"></span>
                           <textarea type="text" name="DueTmrw" id="DueTmrw" class="form-control" rows="7"></textarea>
                              <!---<cfoutput query="tomorrowTextArea">
                              <tr>
                                 <td>#id#</td>
                                 <td>#tomorrowTextArea.name#</td>
                                 <td>#Item_Count# ITEMS</td>
                              </tr>
                              </cfoutput>--->
                           </tbody>
还尝试过这样做:$DueTmrw>tbody.append'mydatamore data'

jQuery的.val专门用于获取/设置表单组件的输入类型的值,例如和元素

这就是为什么成功回调可以很好地使用.val更新值,但在尝试更新span标记时会中断:

使用.val更新表单输入类型:

如果要在元素中设置HTML,如从服务器获取的HTML,请使用.HTML:

如果要更新或替换页面上某个元素的innerHTML,请使用.html:

希望这有帮助

jQuery的.val专门用于获取/设置表单组件的输入类型的值,例如和元素

这就是为什么成功回调可以很好地使用.val更新值,但在尝试更新span标记时会中断:

使用.val更新表单输入类型:

如果要在元素中设置HTML,如从服务器获取的HTML,请使用.HTML:

如果要更新或替换页面上某个元素的innerHTML,请使用.html:


希望这有帮助

我没有看到任何标签?在CF中构建html结构时,您可能还想查看cfsavecontent。我只是尝试用结果循环填充表的那部分,我没有更改列标题或任何内容……我没有看到结果。所以我假设那里也有一个表标记。我想在这种情况下我要做的是使用table和all构建整个构造,然后为结果设置div.innerHTML。我没有看到任何标记吗?在CF中构建html结构时,您可能还想查看cfsavecontent。我只是尝试用结果循环填充表的那部分,我没有更改列标题或任何内容……我没有看到结果。所以我假设那里也有一个table标记。我想在这种情况下我要做的是使用table和all构建整个构造,然后将div.innerHTML设置为结果。我仍然不知道如何显示:id tomorrowTextArea.name Item_Count ITEMS@DavidBrierton,检查我添加到答案中的.html示例,我想这就是你想要的,如果我只是想通过tr-td-tr循环,我会将id添加到tbody吗?这样地?想要获得100xp积分哈哈,我仍然不知道如何显示:id tomorrowTextArea.name Item\u Count ITEMS@DavidBrierton,查看我添加到答案中的.html示例,我想这就是你想要的,如果我只是想通过tr-td-tr循环,我会将id添加到tbody吗?这样地?想要获得100xp积分哈哈
// this will work to change the value of an input field 
// (like a textarea) but will not update a <span> element.
$('#DueTmrw').val(data.TEXT);
// this will work to change the text of a non-form input field 
// (like a span) but will not update an <input> or form input element.
$('#DueTmrw').text(data.TEXT);
var htmlFromServer = '<tr><td>example</td></tr>';
var myElement = $('.someTag');
myElement.html(htmlFromServer);