【问题标题】:How do I have my drop down selections submit in the HTML form?如何在 HTML 表单中提交我的下拉选择?
【发布时间】:2015-03-29 19:20:52
【问题描述】:

我有这些条件下拉列表按预期在屏幕上运行,但我无法从下拉列表中获取选定的值以输出 HTML 表单(如果我不包含 javascript,我可以)。根据下面的 xml 结果(Company & Add1),仅输出文本输入。我希望 xml 包含第一个下拉列表中的位置,以及条件第二个下拉列表中选择的城市。

<body>
<form action="http://TESTPLANETPRESS:8080/ObtainQuote" method="GET" >
    <fieldset>
       <legend>Location</legend>
       <select id="country" class="source" onchange="updateSelectTarget()">
          <option value="England">England</option>
          <option value="France">France</option>
          <option value="Germany">Germany</option>
       </select>   
       <select id="England">
          <option value="Birmingham">Birmingham</option>
          <option value="Liverpool">Liverpool</option>
          <option value="London">London</option>
       </select>
       <select id="France" class="hidden">
          <option value="Lyon">Lyon</option>
          <option value="Marseille">Marseille</option>
          <option value="Paris">Paris</option>
       </select>
       <select id="Germany" class="hidden">
          <option value="Berlin">Berlin</option>
          <option value="Hamburg">Hamburg</option>
          <option value="Munich">Munich</option>
       </select>
       <label for="Company">Company:</label><input type="text" name="Company" value="Google">
   <label for="Add1">Add1:</label><input type="text" name="Add1" value="1 Nowhere Street">
    </fieldset>
    <input type="submit" value="Submit">
</form>
<script>
	function updateSelectTarget () {
	   var id = this.options[this.selectedIndex].value;
	   var targets = this.parentNode.getElementsByTagName("select");
	   var len = targets.length;
	   for (var i = len - 1; i > 0; --i) {
		  if (targets[i].id == id) {
			 targets[i].style.display = "block";
		  }
		  else {
			 targets[i].style.display = "none";
		  }
	   }
	}
	
	function initChangeHandler () {
	   var el = document.getElementById("country");
	   el.onchange = updateSelectTarget;
	   el.onchange();
	}
	window.onload = initChangeHandler;
</script>
</body>

当前 XML 结果,(不包括来自两个下拉菜单的结果)。

<?xml version="1.0"?>

-<request type="GET">

<paths count="0"/>


-<values count="2">

<Company>Google</Company>

<Add1>1 Nowhere Street</Add1>

</values>

【问题讨论】:

    标签: javascript html


    【解决方案1】:

    你想要值属性还是文本?基于Get selected value in dropdown list using JavaScript?(类似于第一部分),.value 应该适用于 value 属性,.text 适用于所选文本。

    另外,请提出两个不同的问题,而不是一个问题,其中嵌套了 2 个问题。

    【讨论】:

    • 在提交表单后,我正在寻找与公司和 Add1 一起出现在我的 xml 中的文本..
    • 我其实不懂XML,不好意思,你得另找人了。
    猜你喜欢
    • 2011-10-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-10-31
    • 2023-03-14
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多