如何从文本框中获取姓名和电子邮件ID?

时间:2014-08-19 06:53:11

标签: javascript

我已使用以下功能在文本框中添加了用户名和电子邮件ID。

function (result) {
var rv = [];
$.each(result, function (i, v) {

rv.push(v.Name +" ("  + v.Email + " )" );
});</pre>

它在文本框中显示如下: ABC(ABC @ XYZ)

现在我想以不同方式访问此名称和电子邮件ID。

我该怎么做?

提前致谢。

4 个答案:

答案 0 :(得分:1)

您可以使用要存储多个值的任何自定义属性创建HTML元素。

例如:

<input ID="userInfo" type="text" userName="ABC" userEmail="ABC@XYZ" value="ABC(ABC@XYZ)" />

然后你可以在获取html的名称,ID,css等后,通过属性名在jQuery中查询这些值。

关于如何获取元素的属性值的示例:

w3schools

答案 1 :(得分:0)

从文本框值中获取姓名和电子邮件:

var textbox = document.querySelector('input[type="text"]');
var value = textbox.value;
var a = value.indexOf('(');
var b = value.indexOf(')');
var name = value.substring(0, a);
var email = value.substring(a + 1, b);

答案 2 :(得分:0)

这可能会对您有所帮助Demo

<div >
   Name & Email <input type="text" id="txtNameEmail" value="ABC(ABC@XYZ)" userName="ABC" userEmail="ABC@XYZ"/><br />
   Name<input type="text" id="txtName" /><br />
   Email<input type="text" id="txtEmail" />
</div>

$('#txtName').val($('#txtNameEmail').attr("userName"));
$('#txtEmail').val($('#txtNameEmail').attr("userEmail"));

答案 3 :(得分:0)

我不确定你在问什么,但也许这可以做你想要的?

findByName(rv, targetName) {
    rv.find(function(element, index, array) {
        name = element.substring(0, element.indexOf("("))
        return name === targetName
    })
}

findByName(rv, "ABC")

在大多数浏览器中,find功能实际上并不可用,但您可以对其进行填充并获得相同的功能(请参阅https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/find

您可以使用电子邮件地址编写一个非常相似的功能。