Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/400.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_Ajax - Fatal编程技术网

Javascript 使用jquery调用操作方法后,无法将响应放入定义的目标<;部门>;?

Javascript 使用jquery调用操作方法后,无法将响应放入定义的目标<;部门>;?,javascript,jquery,ajax,Javascript,Jquery,Ajax,我在表的每一行上都有load按钮,用于对ActionMehod“GetAssetCalcert”进行Ajax调用。在收到服务器的响应时,我使用了一个引导弹出模式,该模式在ModalBody中定义了,以便完成其中呈现的数据(这基本上是由getAssetCart()操作方法返回的一个部分页面)。工作正常 第一种方法-使用ASP助手 HTML <tbody> <tr> <td>@asset.ID</td> <td>@asset

我在表的每一行上都有load按钮,用于对ActionMehod“GetAssetCalcert”进行Ajax调用。在收到服务器的响应时,我使用了一个引导弹出模式,该模式在ModalBody中定义了
,以便完成其中呈现的数据(这基本上是由
getAssetCart()
操作方法返回的一个部分页面)。工作正常

第一种方法-使用ASP助手

HTML

<tbody>
<tr>
    <td>@asset.ID</td>
    <td>@asset.name</td>
    <td>@Ajax.ActionLink("Load", "GetAssetCalcert", new { id = asset.report_asset_id } , new AjaxOptions()
    {
        HttpMethod = "GET",
        UpdateTargetId = "popupModel",
        OnComplete = "ShowPopup",
        InsertionMode = InsertionMode.Replace                                                           
    }, new
    {
        @class = "btn btn-round btn-primary",
        @id = "loadCalcert"
    })
</tr>
</tbody>
<td><button id="loadCalcert" class="btn btn-round btn-primary"> load</button>
第二种方法-使用Jquery.ajax()

我想对同一个ActionMethod进行类似的调用,但是使用Jquery,所以我尝试了类似的方法,popupModal确实出现了,但是数据没有填充到目标div中。我在这里做错了什么

HTML

<tbody>
<tr>
    <td>@asset.ID</td>
    <td>@asset.name</td>
    <td>@Ajax.ActionLink("Load", "GetAssetCalcert", new { id = asset.report_asset_id } , new AjaxOptions()
    {
        HttpMethod = "GET",
        UpdateTargetId = "popupModel",
        OnComplete = "ShowPopup",
        InsertionMode = InsertionMode.Replace                                                           
    }, new
    {
        @class = "btn btn-round btn-primary",
        @id = "loadCalcert"
    })
</tr>
</tbody>
<td><button id="loadCalcert" class="btn btn-round btn-primary"> load</button>
加载
JS

function ShowPopup() {
    $('#myModal').modal('show')
    $("#loadCalcert").attr('data-toggle', 'modal');
}
$('#MyDatatable button').click(function(){
    var tr = $(this).closest('tr');
    var idVal = tr.children('td:eq(0)').text();

    var options = {};
    options.url = "/SiteReport/GetAssetCalcert";
    options.type = "GET";
    options.data = { id: idVal};
    options.contentType = "application/json";
    options.dataType = "json";
    options.target = "popupModel";   <-- how to refer target div id here
    options.success = ShowPopup();     <-- Modal show up so it means this is working
    $.ajax(options);
});
$(“#MyDatatable按钮”)。单击(函数(){
var tr=$(this.nexist('tr');
var idVal=tr.children('td:eq(0)').text();
var选项={};
options.url=“/SiteReport/GetAssetCalcert”;
options.type=“GET”;
options.data={id:idVal};
options.contentType=“application/json”;
options.dataType=“json”;

options.target=“popupModel”对于目标,您需要放置“#popupModel”,并且需要删除
options.dataType=“json”
,因为响应是html:

$('#MyDatatable button').click(function(){
    var tr = $(this).closest('tr');
    var idVal = tr.children('td:eq(0)').text();

    var options = {};
    options.url = "/SiteReport/GetAssetCalcert";
    options.type = "GET";
    options.data = { id: idVal};
    options.contentType = "application/json";
    //options.dataType = "json";
    options.target = "#popupModel";   
    options.success = ShowPopup(); working
    $.ajax(options);
});
要引用行中的按钮,请执行以下操作:

html

<td><button class="loadCalcert" class="btn btn-round btn-primary" data-id="rowId"> load</button>

好的,我已经添加了'options.target=“#popupModel””,删除了
dataType=“json”
。仍然只显示空模式。