Estoy usando Visual Studio 2022, .Net 6, ASP.Net Core y SQL Server. Soy muy nuevo en todo esto y no estoy seguro de si lo que estoy tratando de hacer es posible.
Tengo dos botones que invocan una función javascript y pasan un número:
<div id=sidebar> <input type="button" class="button" onclick="DisplayData('1')" value="World1"><br> <input type="button" class="button" onclick="DisplayData('2')" value="World2"> </div>Quiero que la función trate este número como una identificación de un elemento de una base de datos conectada. Luego, quiero mostrar la propiedad Nombre de ese elemento de la base de datos en un div.
<script> function DisplayData(id){ document.getElementById('name').innerHTML = //What do I put here; } </script> <div id=main> <p id="name"></p> </div>¿Hay algo que pueda hacer en javascript o estoy en un camino completamente equivocado?
Creo que te estás perdiendo el paso para leer la entidad de tu base de datos. Su código JS de front-end debe enviar una llamada AJAX a su backend de .net core para obtener esa entidad de la base de datos con ID de seletec. Y luego puede mostrar cualquier propiedad de los datos devueltos.
Puede usar ajax para pasar la id a la acción y la acción devuelve el nombre relacionado. Luego, cambie el innerHtml con el nombre relacionado en js. Aquí hay una demostración:
js:
function DisplayData(id) { $.ajax({ url: "GetName", data: { id:id}, type: "POST", success: function (name) { document.getElementById('name').innerHTML = name; } }) }acción:
public JsonResult GetName(int id) { string name = //get name from database with the id return new JsonResult(name); }