0

following is the html code

<input id="Jobs[0].TestParameter" name="Jobs[0].TestParameter" type="hidden" />

following is the jquery code

var ParamArr = [ "Ford", "BMW", "Fiat" ];
$("#Jobs[0].TestParameter").val(JSON.stringify(ParamArr));
            alert($("#Jobs[0].TestParameter").val());

3 Answers3

3

Escape the special characters in your ID tag to fix your problem.

$("#Jobs\\[0\\]\\.TestParameter").val(JSON.stringify(ParamArr));
            alert($("#Jobs\\[0\\]\\.TestParameter").val());

var ParamArr = [ "Ford", "BMW", "Fiat" ];
$("#Jobs\\[0\\]\\.TestParameter").val(JSON.stringify(ParamArr));
            alert($("#Jobs\\[0\\]\\.TestParameter").val());
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input id="Jobs[0].TestParameter" name="Jobs[0].TestParameter" type="hidden" />
Mayank Patel
  • 1,545
  • 1
  • 13
  • 18
Huso
  • 1,465
  • 9
  • 14
0

pass simple id \\ for escape character

var ParamArr = ["Ford", "BMW", "Fiat"];
$("#Jobs\\[0\\]\\.TestParameter").val(JSON.stringify(ParamArr));
alert($("#Jobs\\[0\\]\\.TestParameter").val());
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input id="Jobs[0].TestParameter" name="Jobs[0].TestParameter" type="hidden" />
Bhargav Chudasama
  • 6,348
  • 3
  • 19
  • 37
0

You need to escape the square brackets([]) and the dot (.) so that they are not counted as attribute selectors. Try this

var ParamArr = ["Ford", "BMW", "Fiat"];
$("#Jobs\\[0\\]\\.TestParameter").val(JSON.stringify(ParamArr));
alert($("#Jobs\\[0\\]\\.TestParameter").val());
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input id="Jobs[0].TestParameter" name="Jobs[0].TestParameter" type="" />
Carsten Løvbo Andersen
  • 25,262
  • 9
  • 45
  • 70