Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-core/3.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动态生成的控件_Javascript_Asp.net Core - Fatal编程技术网

在控制器中处理javascript动态生成的控件

在控制器中处理javascript动态生成的控件,javascript,asp.net-core,Javascript,Asp.net Core,我有一个asp.net核心的项目。我有一个视图,可以从输入中的excel表执行粘贴操作,javascript代码读取信息并使用该信息创建输入控件。如何处理所有控件并通过提交将其发送给控制器?我想保存所有的信息 Javascript代码: <script> $(document).ready(function () { $("#excel").bind('paste', function (e) { $("#excel").hide();

我有一个asp.net核心的项目。我有一个视图,可以从输入中的excel表执行粘贴操作,javascript代码读取信息并使用该信息创建输入控件。如何处理所有控件并通过提交将其发送给控制器?我想保存所有的信息

Javascript代码:

<script>
$(document).ready(function () {
    $("#excel").bind('paste',
        function (e) {
            $("#excel").hide();
            $("#div_cargar").hide();
            var cells = '';
            var i_group = '<div class="form-group row">';
            var f_group = '</div>';


            //Variables del input del id frente
            var i_div_1 = '<div class="col-sm-1">';
            var f_div = '</div>';
            var label_id = '<label class="control-label col-sm-1" for="id_frente">Frente:</label>';


            //variables del input de frente
            var i_div_7 = '<div class="col-sm-2">';
            var f_div_7 = '</div>';
            var label_frente = '<label class="control-label col-sm-1" for="frente">Frente:</label>';
            var copy = e.originalEvent.clipboardData.getData('Text');
            var rows = copy.split('\n');
            var id_frente_in = '';
            var frente_in = '';
            var id_frente = "";
            var frente = "";

            //Variables partidas
            var label_partida = '<label class="control-label col-sm-1" for="frente">Partida:</label>';
            var id_partida_in = '';
            var partida_in = '';
            var partida = '';
            var id_partida = '';


            //Variables conceptos
            var i_div_2 = '<div class="col-sm-2     ">';
            var f_div_2 = '</div>';
            var i_div_3 = '<div class="col-sm-3">';
            var f_div_3 = '</div>';
            var i_div_4 = '<div class="col-sm-4">';
            var f_div_4 = '</div>';
            var label_concepto = '<label class="control-label col-sm-1" for="frente">Concepto:</label>';
            var id_concepto_in = '';
            var concepto_in = '';
            var concepto = '';
            var id_concepto = '';
            var contadorparaapartado = 0;

            //Variables parametros
            var i_div_5 = '<div class="col-sm-8">';
            var f_div_5 = '</div>';
            var label_parametro = '<label class="control-label col-sm-1" for="frente">Parametro:</label>';
            var id_concepto_in = '';
            var parametro_in = '';
            var parametro = '';
            var id_partida = '';


            var previousrow = "";
            var hr = "";
            $.each(rows,
                function (index, value) {

                    //Se valida que no este vacio el value
                    if (value) {
                        var columna = rows[index].split("\t");
                        console.log(columna);
                        columna[0] = columna[0].replace(/["]/g, "'");
                        columna[1] = columna[1].replace(/["]/g, "'");
                        //Se valida si cambia de columna

                        if (columna[0].split(".").length - 1 == 3) {//FRENTES--------------------------------------------------------
                            id_frente_in = columna[0];
                            frente_in = columna[1];
                            //Se arregla el input del id del frente
                            id_input =
                                '<input type="text" class="form-control" id="id_frente" name="id_frente_ek[]" req="" value="' +
                                id_frente_in +
                                '">';
                            id_frente = label_id + i_div_1 + id_input + f_div;
                            id_frenteactual = id_frente;

                            //Se arregla el input del frente
                            frente_input =
                                '<input type="text" class="form-control input-sm" id="frente" name="frente[]" req="" value="' +
                                frente_in +
                                '">';
                            frente = i_div_7 + frente_input + f_div_7;

                            frenteactual = id_frenteactual + frente;

                            //$('.frentes').append(id + frente);

                        } else if (columna[0].split(".").length - 1 == 4) {//PARTIDAS-----------------------------------------------
                            id_partida_in = columna[0];
                            partida_in = columna[1];

                            //Se arregla el input del id de la partida
                            id_input =
                                '<input type="text" class="form-control" id="id_partida" name="id_partida_ek[]" req="" value="' +
                                id_partida_in +
                                '">';
                            id_partida = label_partida + i_div_2 + id_input + f_div;

                            id_partidactual = id_partida;
                            //Se arregla el input del frente
                            partida_input =
                                '<input type="text" class="form-control input-sm" id="partida" name="partida[]" req="" value="' +
                                partida_in +
                                '">';
                            partida = i_div_3 + partida_input + f_div_4;

                            partidaactual = id_partidactual + partida;

                            //$(".partidas").append(id + partida);s
                        }
                        else if (columna[0] != "") {//CONCEPTOS-----------------------------------------------
                            var siguienterow = rows[index + 1].split("\t");
                            if (siguienterow[0] == "") {
                                if (previousrow != "") {
                                    concepto_in = columna[0] + " (Apartado: " + previousrow + ") ";
                                } else {
                                    concepto_in = columna[0];
                                }

                                //Se arregla el input del id de la concepto
                                id_input =
                                    '<input type="text" class="form-control" id="id_concepto" name="id_concepto_ek[]" req="" value="' +
                                    concepto_in +
                                    '">';
                                concepto = label_concepto + i_div_2 + id_input + f_div_4;

                                conceptoactual = concepto;
                            } else {
                                previousrow = columna[0];
                            }
                        }
                        else if (columna[0] == "" && columna[1] != "") {//PARAMETROS-----------------------------------------------
                            var siguienterow = rows[index + 1].split("\t");
                            if (siguienterow[0].split(".").length - 1 == 3) {
                                hr = '<hr>';
                            }
                            parametro_in = columna[1];

                            //Se arregla el input del id de la parametro
                            id_input =
                                '<input type="text" class="form-control" id="id_parametro" name="id_parametro_ek[]" req="" value="' +
                                parametro_in +
                                '">';
                            parametro = conceptoactual + label_parametro + i_div_5 + id_input + f_div_5;


                            //$(".parametros").append(id);
                        }

                        if (id_frente == "") {
                            $(".frentes").append(i_group +
                                id_frente +
                                frente +
                                id_partida +
                                partida +
                                parametro +
                                f_group);
                        } else {
                            $(".frentes").append(hr + i_group + id_frente + frente + id_partida + partida + parametro + f_group);
                        }


                        id_frente = "";
                        frente = "";
                        id_partida = "";
                        partida = "";
                        concepto = "";
                        parametro = "";
                    }
                });

        });
});

$(文档).ready(函数(){
$(“#excel”).bind('粘贴',
职能(e){
$(“#excel”).hide();
$(“#div_cargar”).hide();
var单元格=“”;
var i_组=“”;
var f_组=“”;
//变量del输入del id frente
var i_div_1='';
var f_div=“”;
变量标签_id='Frente:';
//输入法变量
var i_div_7=“”;
var f_div_7='';
var label_frente='frente:';
var copy=e.originalEvent.clipboardData.getData('Text');
var rows=copy.split('\n');
变量id_frente_in=“”;
变量frente_in=“”;
var id_frente=“”;
var frente=“”;
//变量partidas
var label_partida='partida:';
变量id_partida_in='';
变量partida_in=“”;
var partida='';
变量id_partida='';
//变量概念
变量i_div_2=“”;
var f_div_2='';
var i_div_3='';
var f_div_3='';
var i_div_4='';
var f_div_4='';
var label_concepto='concepto:';
变量id_concepto_in='';
var concepto_in='';
var concepto='';
变量id_concepto='';
var Contadorparapartado=0;
//变量参数
var i_div_5='';
var f_div_5='';
var label_parametro='parametro:';
变量id_concepto_in='';
var Parametero_in='';
var参数=“”;
变量id_partida='';
var previousrow=“”;
var hr=“”;
$。每行,
函数(索引、值){
//Se valida que无este vacio el值
如果(值){
var columna=行[index]。拆分(“\t”);
console.log(columna);
columna[0]=columna[0]。替换(/[“]/g,”);
columna[1]=columna[1]。替换(/[“]/g,”);
//柱状坎比亚万利达酒店
if(columna[0].split(“.”).length-1==3){//freentes--------------------------------------------------------
id_frente_in=columna[0];
frente_in=columna[1];
//Se arregla el input del id del frente
id_输入=
'';
id\u frente=标签id+i\u div\u 1+id\u输入+f\u div;
法语=法语;
//Se arregla el frente输入端
法语输入=
'';
frente=i_div_7+frente_输入+f_div_7;
法语=法语+法语;
//$('.frentes')。追加(id+frente);
}else if(columna[0].split(“.”).length-1==4){//PARTIDAS-----------------------------------------------
id_partida_in=columna[0];
partida_in=columna[1];
//这是一个输入数据集
id_输入=
'';
id\u partida=标签\u partida+i\u div\u 2+id\u输入+f\u div;
id_partidactual=id_partida;
//Se arregla el frente输入端
partida_输入=
'';
partida=i_div_3+partida_输入+f_div_4;
partidaactual=id_partidactual+partida;
//$(“.partidas”).append(id+partida);s
}
else if(columna[0]!=“”){//CONCEPTOS-----------------------------------------------
var siguienterow=行[index+1]。拆分(“\t”);
如果(siguienterow[0]=“”){
如果(上一行!=“”){
concepto_in=columna[0]+“(公寓:“+previousrow+”);
}否则{
concepto_in=columna[0];
}
//这是一个概念的输入
id_输入=
'';
概念=标签概念+i分区2+id分区输入+f分区4;
概念实际=概念;
}否则{
previousrow=列[0];
}
}
else if(columna[0]==”&&columna[1]!=”){//PARAMETROS-----------------------------------------------
var siguienterow=行[index+1]。拆分(“\t”);
if(siguienterow[0]。拆分(“.”)。长度-1==3){
hr=“
”; } parametro_in=columna[1]; //Se arregla el input del id de la parametro id_输入= '';
<div class="card-header h4">
    Index
    <a asp-action="Guardar" class="btn btn-success btn-sm float-right" type="submit" title="Guardar 
    datos"><i class="fas fa-save"></i></a>
    <a asp-action="Index" class="btn btn-light btn-sm float-right" title="Crear nueva persona"><i 
    class="fas fa-redo"></i></a>
</div>


<div class="card-body">
    <label class="text-gray-800" id="div_cargar">Cargar datos aquí:</label>
    <input class="form-control" id="excel" />
    <div class="form-group">
        <form asp-action="Guardar">
            <div class="frentes">

            </div>
        </form>
    </div>
</div>
[HttpPost] // assuming you will be posting
public ActionResult YourActionMethod(IFormCollection data)
{
    // if you want to iterate
    foreach (var keyValuePair in data)
    {
        ...
    }
    // or if you want to get by form control name
    var name = data["name"];
    ...
}