2015-12-21 43 views
0

任何人都可以用组合键帮我吗?我无法正常工作。带复合键的Yii2模态

function init_click_handlers(){ 
    $(".button-endereco").click(function(e) { 
      var fcodigo = $(this).closest("tr").data("codigo"); 
      var fcodigopessoa = $(this).closest("tr").data("codigopessoa"); 
      var map = {codigo: $(this).closest("tr").data("codigo"), codigopessoa: $(this).closest("tr").data("codigopessoa")}; 
      $.get(
       "update ", 
       { 
        codigo: fcodigo 
        codigopessoa: fcodigopessoa 
       }, 
       function (data) 
       { 
        $("#endereco-modal").find(".modal-body").html(data); 
        $(".modal-body").html(data); 
        $("#endereco-modal").modal("show"); 
       } 
      ); 
     }); 

} 

init_click_handlers(); //first run 
$("#endereco_id").on("pjax:success", function() { 
    init_click_handlers(); //reactivate links in grid after pjax update 
}); 

$url = Yii::$app->urlManager->createUrl('../endereco/update?codigo='.$dataProvider->codigo.'&codigopessoa='.$dataProvider->codigopessoa); 
+0

你能进一步解释它是如何的不正常? –

+0

通过这种方式的脚本,表单看起来破损并且在检查的方式中使用了google chrome来控制javascript中的错误。但是,如果我在代码后面加逗号:fcodigo发生错误,但_form显示为空白。 –

回答

0

如果你想引用$ dataProvider中的数据,你需要获得你需要的模型。在数据提供程序所有的模型涉及到查询可用,您可以从模型阵列获取的具体型号通过适当的指标如访问:

myModel = $dataProvider->models[yourIndex] 

myValue = myModel->myField 

你的情况,敌人例如,你可以得到vaue这样

myModel = $dataProvider->models[0]: 
myValue = myModel->codigo; 
+0

他们是我需要的两个模型,我实际上正在尝试使用带有组合键的模态_form。 直到你到达那里,但脚本错误,并干扰其他模块,如kartik。 –

0

我得到了90%的响应,但没能赶上我的组合密钥(密码,codigopessoa),迫使值来测试功能和它的工作。 所以缺乏我得到的列值(复合键)。

function init_click_handlers(){ 
    $(".button-endereco").click(function(e) { 
      fcodigo = $(this).closest("tr").data("codigo"); 
      fcodigopessoa = $(this).closest("tr").data("codigopessoa"); 
      $.ajax({ 
       url: "'.Yii::$app->urlManager->createUrl('endereco/update').'", 
       type: "GET", 
       data: {"codigo": parseInt(17), "codigopessoa":parseInt(8)}, 
       dataType: "html", 
       success: function(data) { 
         $("#endereco-modal").find(".modal-body").html(data); 
         $(".modal-body").html(data); 
         $("#endereco-modal").modal("show"); 
       } 
      }); 
     }); 
} 

init_click_handlers(); //first run 
$("#endereco_id").on("pjax:success", function() { 
    init_click_handlers(); //reactivate links in grid after pjax update 
}); 
+0

data:{“codigo”:parseInt(fcodigo),“codigopessoa”:parseInt(fcodigopessoa)}, 结果:GET http://sistema.iprem.com/endereco/update?codigo=NaN&codigopessoa=NaN 404(Not Found ) –

0

[100%的工作最后得到了它,对于那些谁想要使用的GridView(卡尔蒂克)复合键下面的代码:

function init_click_handlers(){ 
    $(".button-endereco").click(function(e) { 
      chave = $(this).closest("tr").data("key"); 
      $.ajax({ 
       url: "'.Yii::$app->urlManager->createUrl('endereco/update').'", 
       type: "GET", 
       data: {"codigo": parseInt(chave["codigo"]), "codigopessoa":parseInt(chave["codigopessoa"])}, 
       //data: {keylist: parseInt(keys)}, 
       dataType: "html", 
       success: function(data) { 
         $("#endereco-modal").find(".modal-body").html(data); 
         $(".modal-body").html(data); 
         $("#endereco-modal").modal("show"); 
       } 
      }); 
     }); 
} 

init_click_handlers(); //first run 
$("#endereco_id").on("pjax:success", function() { 
    init_click_handlers(); //reactivate links in grid after pjax update 
});