JavaScript对象值修改

时间:2015-12-29 22:05:50

标签: javascript google-apps-script

我使用JavaScript(确切地说是Google Apps脚本),而且我在使用对象时遇到了一些问题。

我有一个var,formData,它充满了从HTML表单传回来的数据。我可以愉快地访问这样的值;展览是选择元素的名称;

formData.exhibitions.value

但我想改变" *"的价值。到" ALL"。我已经尝试了以下所有内容;

formData.exhibitions.value = "ALL"
formData["exhibitions"] = "ALL"
formData.element["exhibitons"] = "ALL"

以及上述的其他一些版本,但没有改变价值。

编辑 - 缩减代码,HTML表单

<form>
Exhibition search <select id="exhibitionList" name ="exhibition">
       <option value="*">All</option>
       <option value="shoes">shoes</option>
       </select>
<input type = "button" value ="Item Search" onclick="printSearch(this.form)"/>
</form>

,功能是

printSearch(formData){
if(formData.exhibition.value != "*"){
whereData.push(exhibition+"='"+formData.exhibition.value+"'");
}else{formData.set('exhibition','ALL');}
}

一切正常我似乎无法改变ELSE语句之后的值。

1 个答案:

答案 0 :(得分:0)

您尝试做的事情无法奏效。 <select>的值必须是其<option>元素之一的值。这是因为该值实际存储在select selectedIndex属性中。当您分配到formData.exhibition.value时,它会在选项中搜索其值与此匹配的选项,然后将formData.exhibition.selectedIndex设置为其位置。如果没有匹配,则会失败,并且不会更改该值。

由于您没有<option value="ALL">元素,因此尝试将值设置为必须失败。