En mi escenario, quiero cambiar el valor de una tabla mediante la selección de botones de opción.
Código para el botón de opción
@Html.RadioButtonFor(m => m.Doctype1, new { id = "doctype1", @onclick = "DocTypeSelect()" }) @Html.Label("largedocs") @Html.RadioButtonFor(m => m.Doctype2, new { id = "doctype2", @onclick = "DocTypeSelect()" }) @Html.Label("SmallDocs") @Html.RadioButtonFor(m => m.Doctype3, new { id = "doctype3", @onclick = "DocTypeSelect()" }) @Html.Label("MediumDocs") @Html.RadioButtonFor(m => m.Doctype4, new { id = "doctype4", @onclick = "DocTypeSelect()" }) @Html.Label("VerySmallDocs")Escribí una lógica para ocultar otros valores desplegables. Al usar, puedo cambiar el menú desplegable y ocultar otros 3 botones.
<td id="DocTypes1"> @Html.DropDownlistfor(m => m.Doctype, new selectlist(m.BigDocs, "Value", "Text", m.BigDocs), new { @id = "SelectDocType", @onchange = "ChangeTypes()" }) <td id="DocTypes2"> @Html.DropDownlistfor(m => m.Doctype, new selectlist(m.BigDocs, "Value", "Text", m.BigDocs), new { @id = "SelectDocType", @onchange = "ChangeTypes()" }) <td id="DocTypes3"> @Html.DropDownlistfor(m => m.Doctype, new selectlist(m.BigDocs, "Value", "Text", m.BigDocs), new { @id = "SelectDocType", @onchange = "ChangeTypes()" }) <td id="DocTypes4"> @Html.DropDownlistfor(m => m.Doctype, new selectlist(m.BigDocs, "Value", "Text", m.BigDocs), new { @id = "SelectDocType", @onchange = "ChangeTypes()" })En Javascript, si se selecciona un valor particular, quiero obtener ese valor y mostrarlo en una vista de tabla de formato.
El código existente siempre obtiene el único tipo de valor de documento. no se porque???
funtion ChangeTypes(){ var docId=$("SelectDocType").val(); var docType=$("SelectDocType option:selected").text(); if(SelectDocType !="") { //my logic }en realidad, necesito obtener los datos cuando un usuario cambia los valores desplegables. Ayúdenme a resolver esto..
Gracias por adelantado
si necesita encontrar todos los menús desplegables, entonces:
$('select[id^="SelectDocType"]')debería darle todos los menús desplegables cuya identificación coincida, aunque no es una buena práctica que los elementos compartan la misma identificación, si puede darles una identificación única junto a la misma clase, entonces puede encontrarlos todos usando el nombre de la clase
$('.myclass')necesitará usar un para cada ciclo y luego obtener los valores de cada elemento.
$( "select" ).each(function( index ) { console.log( index + ": " + $( this ).val() ); })pero si quieres hacerte la vida más fácil, ¿por qué no pasar el valor a la función de esta manera?
<td id="DocTypes2"> @Html.DropDownlistfor(m => m.Doctype, new selectlist(m.BigDocs, "Value", "Text", m.BigDocs), new { @id = "SelectDocType", @onchange = "ChangeTypes(this.value)" }) ... funtion ChangeTypes(val){ console.log(val); }espero que esto ayude