Avatar billede keepy Seniormester
11. oktober 2023 - 10:28 Der er 1 kommentar

js til asp backend

Hej
jeg har en web side hvor der er nogle checkbox på disse afkrydsninger vil jeg gerne kunne sætte fra backend model og modtage fra web siden.
Når jeg løber mine checkbokse igennem og sætte deres state i modellen går det fint, men når jeg sender via axios.post modelen til backend får jeg en exception.

var checkedValue = null;
var inputElements = document.getElementsByClassName('Checkbox');

for (var i = 0; inputElements[i]; ++i) {
    if (inputElements[i].checked) {

        checkedValue = inputElements[i].value;
        vm.responseModel.Data[i].selected = true;
        //alert(Data[i].Name + Data[i].selected);
    }
    else {
        vm.responseModel.Data[i].selected = false;
    }
}
axios.post('@Url.Action($"savesettings", entity)', vm.responseModel.Data)

Exception (1):An item with the same key has already been added.
at System.ThrowHelper.ThrowArgumentException(ExceptionResource resource)
at System.Collections.Generic.Dictionary`2.Insert(TKey key, TValue value, Boolean add)
at System.Collections.Generic.Dictionary`2.Add(TKey key, TValue value)
at System.Web.Mvc.JsonValueProviderFactory.EntryLimitedDictionary.Add(String key, Object value)
at System.Web.Mvc.JsonValueProviderFactory.AddToBackingStore(EntryLimitedDictionary backingStore, String prefix, Object value)
at System.Web.Mvc.JsonValueProviderFactory.AddToBackingStore(EntryLimitedDictionary backingStore, String prefix, Object value)
at System.Web.Mvc.JsonValueProviderFactory.AddToBackingStore(EntryLimitedDictionary backingStore, String prefix, Object value)
at System.Web.Mvc.JsonValueProviderFactory.AddToBackingStore(EntryLimitedDictionary backingStore, String prefix, Object value)
at System.Web.Mvc.JsonValueProviderFactory.GetValueProvider(ControllerContext controllerContext)
at System.Web.Mvc.ValueProviderFactoryCollection.GetValueProvider(ControllerContext controllerContext)
at System.Web.Mvc.ControllerBase.get_ValueProvider()
at System.Web.Mvc.ControllerActionInvoker.GetParameterValue(ControllerContext controllerContext, ParameterDescriptor parameterDescriptor)
at System.Web.Mvc.ControllerActionInvoker.GetParameterValues(ControllerContext controllerContext, ActionDescriptor actionDescriptor)
at System.Web.Mvc.Async.AsyncControllerActionInvoker.<>c__DisplayClass3_1.b__0(AsyncCallback asyncCallback, Object asyncState)
from: mscorlib
Avatar billede keepy Seniormester
11. oktober 2023 - 13:46 #1
Når dette køres kan der ikke laves axios post kald, hvordan kan det være ?
var checkedValue = null;
var inputElements = document.getElementsByClassName('Checkbox');

for (var i = 0; inputElements[i]; ++i) {
    if (inputElements[i].checked) {

        checkedValue = inputElements[i].value;
        vm.responseModel.Data[i].selected = true;
        //alert(Data[i].Name + Data[i].selected);
    }
    else {
        vm.responseModel.Data[i].selected = false;
    }
}
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester