javascript - jQuery val() 用于字符串数组

标签 javascript jquery angularjs

我对 jQuery 及其用途非常陌生,但我正在尝试做一些简单的事情...我有一个包含字符串列表的隐藏输入,我正在尝试将其放入 AngularJS Controller 中。

这是我的输入

<input type="hidden" id="states" value="{!states}" />

以及我的 Controller 中的代码

$scope.states = jQuery('#states').val();

但是,当我尝试类似 alert($scope.states[0]) 时,警报框仅包含“[”,就好像 states 数组中的第一个元素是 [,第二个元素是A、第三个元素是L等

我做错了什么吗?

最佳答案

您需要将值从字符串转换为数组。尝试使用JSON.parse() :

$scope.states = JSON.parse(jQuery('#states').val());

关于javascript - jQuery val() 用于字符串数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33286019/

相关文章:

javascript - 如何在 javascript 中实现指针之类的东西?

javascript - "avery"在浏览器中输入模板

javascript - 如何使用 Jasmine 测试完成和失败的延迟对象

javascript - Pubnub 在更改 channel 时收到重复的消息

javascript - 如果选中所有复选框,则启用提交按钮

javascript - 将 ISO 日期时间转换为毫秒

javascript - 如果存在验证错误,则保持单选按钮处于选中状态

javascript - Bootstrap 轮播在最后一项之后停止

javascript - 带有 contenteditable 的真实计数器

javascript - 在 Typescript 中使用 AsyncIterator – 必需选项