2017-03-02 69 views
0

我有我的代码在下面。我做了一个空数组,但我不知道如何连接它们。此外,我试图从我的组合框中获得价值,但它给了我一个错误。文本框tho从用户的输入中获取值,但不是组合框。如何从用户的输入中填充json对象数组?

function sample() { 
 
    var jsObject = []; 
 
    jsObject { 
 
    "salutation": null, 
 
    "fname": null 
 
    }; 
 
    var sal = document.getElementById('salutation').value; 
 
    var fname = document.getElementById('fname').value; 
 
    if (fname.value == "") { 
 
    return false; 
 
    } 
 
    for (var key in sal) { 
 
    sal = sal[key]; 
 
    } 
 
}
<!DOCTYPE html> 
 
<html> 
 

 
<head> 
 
    <title>Sample</title> 
 
    <script type="text/javascript" src="index.js"></script> 
 
</head> 
 

 
<body> 
 
    <form name="sam" onsubmit="return sample()" method="post"> 
 
    <select name="salutation"> 
 
\t \t \t \t <option value="mr">Mr.</option> 
 
\t \t \t \t <option value="mrs">Mrs.</option> 
 
\t \t \t \t <option value="dr">Dr.</option> 
 
\t \t \t </select><br> Name: 
 
    <br> 
 
    <input type="text" name="fname" id="fname" required placeholder="Enter name"> 
 
    <input type="submit" onclick="sample(); return false;" value="Submit"> 
 
    </form> 
 
</body> 
 

 
</html>

+1

你有语法错误,你不应该使用的形式张贴+如果你没有实际发送任何数据到服务器。此外,您可以通过按钮点击和onsubmit事件来调用示例。 – Shilly

回答

0

如果你有一个看起来像这样的选择元素:

<select id="ddlViewBy"> 
    <option value="1">test1</option> 
    <option value="2" selected="selected">test2</option> 
    <option value="3">test3</option> 
</select> 

运行此代码:

var e = document.getElementById("ddlViewBy"); 
var strUser = e.options[e.selectedIndex].value; 

是否会让strUser的是2,如果什么你实际上想要的是test2,然后执行此操作:

var e = document.getElementById("ddlViewBy"); 
var strUser = e.options[e.selectedIndex].text; 

这将使strUser的是test2的

+0

原始答案在这里回答@Paolo Bergantino [http://stackoverflow.com/questions/1085801/get-selected-value-in-dropdown-list-using-javascript] – Toxide82