How To Pass Contents Of An Html Table As Form Data On A Post?
I have a list of groups in a to add the selected group to a of values. The list of groups that's
Solution 1:
Wrap your table in a form and put the data you want to post but not display to the user in hidden inputs
<formmethod="post"action=""><!-- your table --><inputtype="hidden"name="name"value="your value"/><buttontype="submit">Post</button></form>
Solution 2:
I have done it:
functionsendTableArticles() {
var columns = [
'articulo.id',
'articulo.descripcion',
'unidadMedida.descripcion',
'precio',
'importe',
'totalRequerido',
'totalIngresado'
];
var tableObject = $('#table_articles tbody tr').map(function (i) {
var row = {};
$(this).find('td').each(function (i) {
var rowName = columns[i];
row[rowName] = $(this).text();
});
return row;
}).get();
$.post('@{OrdenComprasDetalles.update()}',
{objects:tableObject},
function (response) {
console.log(response);
}
)
}
in the controller
publicstaticvoidupdate(List<OrdenCompraDetalle> objects){
int i=0;
renderJSON(i);
}
So It's my DTO
@Entity(name = "ordencompradetalle")publicclassOrdenCompraDetalleextendsAbstractTableMapper{
@ManyToOnepublic Articulo articulo;
publicFloat precio;
publicFloat importe;
publicBoolean ingresado;
@Column(name = "total_requerido")publicFloat totalRequerido;
@Column(name = "total_ingresado")publicFloat totalIngresado;
@ManyToOnepublic OrdenCompra ordenCompra;
@ManyToOnepublic UnidadMedida unidadMedida;
@OneToMany(mappedBy = "ordenCompraDetalle")public List<Movimiento> movimientos;
}
I'm using it and it's too usefull, hope it help you too
Solution 3:
<formmethod="post"action="your_server_action"><table><!-- Table row display elements --><inputtype="hidden"name="name"value="your value"/></table><inputtype="submit"value="Submit"/></form>
Solution 4:
I did something like this the other day, my solution was to create an array of objects from my table that I could sent to a web service. The web service should expect an array of objects.
// Read all rows and return an array of objectsfunctionGetAllRows()
{
var myObjects = [];
$('#table1 tbody tr').each(function (index, value)
{
var row = GetRow(index);
myObjects.push(row);
});
return myObjects;
}
// Read the row into an objectfunctionGetRow(rowNum)
{
var row = $('#table1 tbody tr').eq(rowNum);
var myObject = {};
myObject.ChangeType = row.find('td:eq(1)').text();
myObject.UpdateType = row.find('td:eq(2)').text();
myObject.CustomerPart = row.find('td:eq(3)').text();
myObject.ApplyDate = row.find('td:eq(9)').text();
myObject.Remarks = row.find('td:eq(10)').text();
return myObject;
}
Solution 5:
name of select as array by adding [] like this
<select name="modules[]" id="modules"class="inputbox" size="10" multiple="multiple">
<option value="1">Module01</option>
<option value="2">Module02</option>
<option value="3">Module03</option>
</select>
i think after submit you will have an array in your $_POST named for this example modules
Post a Comment for "How To Pass Contents Of An Html Table As Form Data On A Post?"