2
 <div id="panel">
     <table>
         <tr>
             <td><input  type="checkbox" value="Sales Engineering" /></td>
         </tr>
         <tr>
             <td><input  type="checkbox" value="Marketing fiedls" /></td>
         </tr>
     </table>
 </div> 

我正在尝试获取如下所示的复选框值

var listofParameters = $('#panel :input');
for (var index in listofParameters) {
    var ste = $(listofParameters[index]).val();
}

但我只得到第一个空间的价值,而不是全部价值。对于我的代码,我得到以下输出:

Sales 
Marketing 

我希望输出像

Sales Engineering
Marketing fields .

我的代码有什么问题?

4

2 回答 2

4

听起来您的 HTML 实际上是不同的,并且您忘记了属性值周围的引号:

<input type="checkbox" value=Sales Engineering />

那是行不通的。现在Engineering被视为属性并且Sales是属性的值value(正如您已经通过语法高亮看到的那样)。这是一个不带引号的演示

但是您在问题中发布的 HTML(即带引号)对我来说效果很好。因此,请确保您确实在属性值周围加了引号。

于 2013-06-12T10:11:57.253 回答
2

改变:

var ste = $(listofParameters[index]).val();

var listofParameters = $('#panel :input'), ste;
for (var index in listofParameters) {
    ste += $(listofParameters[index]).val();
于 2013-06-12T10:08:47.910 回答