猿问

带 foreach 的循环插入

我想插入到多行数据库表中。


HTML:


<tr>

<td style="display:none"><input type="text" rows="4" name="teste[]" value="<?php echo $produto8["Id"]; ?>"></td>

<td><textarea rows="4" name="Notas[]" value="<?php echo $produto8["Notas"]; ?>"></textarea></td>

<td><select class="form-control" name="EstadoFinal[]"><?php echo $produto8["EstadoFinal"]; ?><option value=<?php echo $ln['Id']; ?>><?php echo $ln['Estado']; ?></option>

<?php        

$sql = "SELECT * FROM raddb.Status WHERE Id IN ('8') ORDER BY Estado ASC";

$qr = mysqli_query($conn, $sql);

while($ln = mysqli_fetch_assoc($qr)){

echo '<option value="'.$ln['Id'].'">'.$ln['Estado'].'</option>';

}

?>      

</select></td> 

</tr> 

数据提交:


function inserir_registo8()

{  


    var dadosajax = {

     'Id' : $("input[name^='teste']").val(),

     'Notas' : $("textarea[name^='Notas']").val(),

     'EstadoFinal' : $("select[name^='EstadoFinal']").val()

    };

    console.log(dadosajax);

    $.ajax({

        url: './resolucaooratorio',

        type: 'POST',

        cache: false,

        data: dadosajax,

        error: function(){

          $(".error_message").removeClass('hide');

        },

        success: function(result)

        { 

        console.log(result);

         $("#spoiler8").load(" #spoiler8 > *");

        }       

    });


}


但是您没有插入,因为您没有收到 html 值。


我确实console.log (dataajax);返回了这个,但不返回数组:


{Id: "11", Notas: "", EstadoFinal: "8"}


但是你应该返回这个:


{Id: "8", Notas: "", EstadoFinal: "8"} {Id: "9", Notas: "", EstadoFinal: "8"} {Id: "10", Notas: "", EstadoFinal: "8"} {Id: "11", Notas: "", EstadoFinal: "8"}


偶然的你
浏览 203回答 3
3回答

猛跑小猪

您应该始终首先在页面的开头创建一个数组对象:var data_array = [];然后在您的循环中,您可以执行以下操作:$('table tr').each(function (i, row) {&nbsp; &nbsp; // reference all the stuff you need first&nbsp; &nbsp; var $row = $(row),&nbsp; &nbsp; &nbsp; &nbsp; $teste = $row.find("input[name^='teste']"),&nbsp; &nbsp; &nbsp; &nbsp; $notas = $row.find("textarea[name^='Notas']"),&nbsp; &nbsp; &nbsp; &nbsp; $estadofinal= $row.find("select[name^='EstadoFinal']");&nbsp; &nbsp; var dadosajax = {&nbsp; &nbsp; &nbsp; 'Id' : $teste.val(),&nbsp; &nbsp; &nbsp; 'Notas' : $notas.val(),&nbsp; &nbsp; &nbsp; 'EstadoFinal' : $estadofinal.val()&nbsp; &nbsp; };&nbsp; &nbsp; data_array.push(dadosajax);)};这就是你如何得到这个对象:[{Id: "8", Notas: "", EstadoFinal: "8"}, {Id: "9", Notas: "", EstadoFinal: "8"}, {Id: "10", Notas: "", EstadoFinal: "8"}, {Id: "11", Notas: "", EstadoFinal: "8"}]
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答