我最好列出一个清单,以便解释我想要做的步骤:
基本设置如下:
<input type='text'name='E_8' value= '123' />
<input type='text'name='E_9' value= '456' />
<input type='text'name='E_10' value= '789' />
<input type='submit' name='submit' value='Update'/>
JS脚本工作正常,我可以添加字段。此外,字段的内容由PHP脚本处理并写入数据库。
简短:无论有多少字段,我如何得到最后一个值?
编辑:我忘记了有一个提交按钮,它也会显示为最后一个元素...对不起
答案 0 :(得分:1)
...的jQuery
var lastInputName = $('input[type="text"]:last').attr('name');
答案 1 :(得分:1)
有很多方法,但鉴于所有其他答案都依赖于jQuery库(这增加了不必要的开销),我将专注于展示一些简单的JavaScript方法(适用于IE8 +以上的最新浏览器)。
var allTextInputs = document.querySelectorAll('input[type="text"]'),
lastInput = allTextInputs[allTextInputs.length - 1],
lastInputName = lastInput.name;
var allInputsTxt = document.querySelectorAll('input[type="text"]');
var lastInput = allInputsTxt[allInputsTxt.length - 1];
var lastInputName = lastInput.name;
var lastInputValue = lastInput.value;
alert('last input name : ' + lastInputName + '; last input value : ' + lastInputValue);
<input type='text'name='E_8' value= '123' />
<input type='text'name='E_9' value= '456' />
<input type='text'name='E_10' value= '789' />
<input type='submit' name='submit' value='Update'/>
如果你想要的是值而不是 name
属性,那么在使用与上面相同的方法获取最后一个名称之后,请执行此操作<input type="text"/>
:
var lastInputValue = lastInput.value;
这些方法将给出代码运行时文档中<input />
的最后type="text"
的值;要找到动态添加到文档中的最后<input />
的值,您需要在该元素插入后重新运行一种工作方法。
答案 2 :(得分:0)
以下jQuery代码应该可以解决问题。
var lastValue = $("input[type=text]:last").val();
还有jQuery:
var $inputs = $("input[type=text]");
var lastValue = $inputs[$inputs.length - 1].value;
答案 3 :(得分:0)
将CSS3 selectors与sizzle (jquery)结合使用,以定位最后一个元素
var name = $('input[name^=E_]:last')[0].name
答案 4 :(得分:0)
PHP或JavaScript中的最后一个值? 在PHP中,字段通常作为数组传递,因此您可以使用
获取最后一个值end($array)
如果你像这样命名你的文件,那就更好了
<input type='text'name='E[8]' value= '123' />
<input type='text'name='E[9]' value= '456' />
<input type='text'name='E[10]' value= '789' />
在JS中,您需要将字段放入数组并获取最后一个....您需要这样的东西
var myFields = document.forms["myform"].getElementsByTagName('input'),
var lastValue = myFields[(myFields.length-1)].value;
答案 5 :(得分:0)
通过将代码包装为父元素,让我们用属性id="inputs"
来说,这是一个vanilla DOM(没有jQuery)解决方案:
// start by finding the last-most element
var lastInput = document.getElementById('inputs').lastElementChild;
// search backward to the last 'text' element
while (lastInput && lastInput.type !== 'text') {
lastInput = lastInput.previousElementSibling;
}
// and get its value
var lastValue = lastInput ? lastInput.value : null;
此解决方案的有趣部分是创建无数组,因此您可以节省一些JavaScript内存。 它应该适用于Firefox,Chrome和IE 9。