无法从jquery中为隐藏字段设置值

时间:2017-10-24 11:44:40

标签: jquery html

以下是html代码

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

以下是jquery代码

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

3 个答案:

答案 0 :(得分:3)

转义ID标记中的特殊字符以解决问题。

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

&#13;
&#13;
var ParamArr = [ "Ford", "BMW", "Fiat" ];
$("#Jobs\\[0\\]\\.TestParameter").val(JSON.stringify(ParamArr));
            alert($("#Jobs\\[0\\]\\.TestParameter").val());
&#13;
<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" />
&#13;
&#13;
&#13;

答案 1 :(得分:0)

为转义字符

传递简单ID var ParamArr = ["Ford", "BMW", "Fiat"]; $("#Jobs\\[0\\]\\.TestParameter").val(JSON.stringify(ParamArr)); alert($("#Jobs\\[0\\]\\.TestParameter").val());

&#13;
&#13;
<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" />
&#13;
{{1}}
&#13;
&#13;
&#13;

答案 2 :(得分:0)

您需要转义方括号([])和点(.),以便它们不被计为属性选择器。试试这个

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="" />