0

我有一个包含动态内容的选择列表,例如

荣誉, 120.00
Porti, 7.50
Spesen, 12.00

此值存储在 x_ko_leistungsart。我只选择一个选项(没有多选),并且如果选择了选项端口,我希望在逗号之后获得值,例如 Honorar 的 120.00 和 7.50。

我正在使用以下函数来获取这些值。不幸的是,它不起作用。我只得到 10 的价值...

您能否看一下可能出现错误的代码?非常感谢 mpol_ch

function SelectAnsatz() {
    document.fkostenedit.x_ko_ansatz.value = '10';
    var Ansatz=0;  
    var splitted;  
    var elements = document.getElementsByName("x_ko_leistungsart[]");
    splitted = elements.nextSibling.nodeValue.split(",");
    Ansatz = parseFloat(splitted[1]);
    document.fkostenedit.x_ko_ansatz.value = Ansatz.toFixed(2);
}
4

2 回答 2

1

看一眼document.getElementsByName("x_ko_leistungsart[]");

我会给你一个提示:你从中获得的“价值”不是你所期望的。您可以通过扩展 getElementByName 函数来减少至少两行代码。

您可以在这里找到更多信息:http: //www.w3schools.com/dom/dom_nodes_get.asp

于 2012-02-20T14:34:03.593 回答
0

即使在 x_ko_leistungsart 上,我也通过 onchange 解决了我的问题。这是功能:

谢谢 mpol_ch

function SelectAnsatz(){

var x=document.getElementById("x_ko_leistungsart");Ansatz=x.options[x.selectedIndex].text.split(","); document.fkostenedit.x_ko_ansatz.value = Ansatz[1]; }

于 2012-02-22T16:52:40.017 回答