这是我要发送给javascript函数的内容,我创建了一个匿名类,因为我认为不需要创建一个类就可以将某些值从Repeater传递给Modal
protected void rptListaCiclosEdit_ItemDataBound(object sender, RepeaterItemEventArgs e)
{
if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
{
int IdMatriz = Convert.ToInt32((e.Item.FindControl("lblMatriz") as Label).Text);
int IdCiclo = Convert.ToInt32((e.Item.FindControl("lblIdCiclo") as Label).Text);
int Perfil = Convert.ToInt32((e.Item.FindControl("lblPerfil") as Label).Text);
int IdTarefa = Convert.ToInt32((e.Item.FindControl("lblIdTarefa") as Label).Text);
int IdAplicacao = Convert.ToInt32((e.Item.FindControl("lblIdAplicacao") as Label).Text);
string TipoAcesso = (e.Item.FindControl("lblTipoAcesso") as Label).Text;
dynamic ciclo = new { IdMatriz = IdMatriz, IdCiclo = IdCiclo, Perfil = Perfil, IdTarefa = IdTarefa, IdAplicacao = IdAplicacao, TipoAcesso = TipoAcesso };
LinkButton lb = e.Item.FindControl("lnkEdit") as LinkButton;
if (lb != null)
lb.OnClientClick = "DisplayModalEditCiclo('" + ciclo + "')";
}
}
在javascript中我有这个
<script type="text/javascript">
function DisplayModalAddCiclo() {
$('#ModalAddCiclo').modal('show')
return false;
}
function DisplayModalEditCiclo(ciclo) {
debugger
//var value = ciclo;
//var s = lnk.id;
//var start = s.indexOf("lnkEdit");
//var end = s.lastIndexOf("_");
//sub = s.substring(start, end);
//s = s.replace(sub, "IdMatriz");
//var hidden = document.getElementById(s);
//var id = hidden.value;
//alert(id);
//var uri = "api/ciclos";
//$.getJSON(uri)
//.done(function (data) {
// $.each(data, function (key, item) {
// console.log(item.IdCiclo);
// console.log(item.IdMatriz);
// });
//})
// .fail(function (jqXHR, textStatus, err) {
// alert('Successfully called');
// });
var ddlCiclo = document.getElementById('<%= ddlCicloUpdate.ClientID %>');
var ddlPerfil = document.getElementById('<%= ddlPerfilUpdate.ClientID %>');
var ddlTarefa = document.getElementById('<%= ddlTarefaUpdate.ClientID %>');
var ddlAplicacao = document.getElementById('<%= ddlAplicacaoUpdate.ClientID %>');
var ddlTipoAcesso = document.getElementById('<%= ddlTipoAcessoUpdate.ClientID %>');
console.log(ciclo.IdCiclo);
for (var index = 0, roof = ddlCiclo.options.length; index < roof; index++) {
if (ciclo["IdCiclo"] == ddlCiclo.options[index].value) {
ddlCiclo.options[index].selected = true;
break;
}
}
$('#ModalEditCiclo').modal('show')
return false;
}
</script>
我可以从javascript中收到的变量中看到所有值和属性名称,但无论如何我都无法访问它的属性