我的表格看起来像这样:
<form id="myForm" onsubmit="handleFormSubmit(this)">
<label for="Identity">Identity</label>
<select class="input-combobox" id="parentAttr" value="Identity" name="Identity">
<? var dropdownOptions = getDropdownOptions(); ?>
<option name="Identity" value="placeholder"></option>
<?
for(i=0; i<dropdownOptions.length;i++){
?>
<option value= "<?= dropdownOptions[i] ?> "> <?= dropdownOptions[i] ?> </option>
<? } ?>
</select>
<input name="myFile" type="file" />
<input type="submit" value="Submit" />
</form>
<script>
// Prevent forms from submitting.
function preventFormSubmit() {
var forms = document.querySelectorAll('form');
for (var i = 0; i < forms.length; i++) {
forms[i].addEventListener('submit', function(event) {
event.preventDefault();
});
}
}
window.addEventListener('load', preventFormSubmit);
function handleFormSubmit(formObject) {
google.script.run.withSuccessHandler(updateUrl).processForm(formObject);
}
function updateUrl(url) {
var div = document.getElementById('output');
div.innerHTML = '<a href="' + url + '">Got it!</a>';
}
</script>
和Code.gs
function processForm(formObject) {
Logger.log(formObject); //logs {myFile=FileUpload, Identity=c } Those are the values I picked in my form.
}
我记录formObject后。我想记录formObject.keys-我不知道调用是什么,因为formObject似乎不是一个有效的javascript对象。此外,我想做for (var key in formObject.keys) {execute something}
之类的事情,但我不知道如何迭代这个formObject。
答案 0 :(得分:1)
你真的试过这个并遇到任何错误吗?迭代对象属性的for循环是
for(var key in object) {
Logger.log(key); // logs property name
Logger.log(object[key]); //logs value for the property
}
记录属性名称的另一个选项
Logger.log(Object.keys(yourFormObject));