我是一个Jquery noob,非常在学习阶段 这是我的小提琴: http://jsfiddle.net/4tjof34d/
(双击三个点中的任意一个以获得上述小提琴中的文本框,然后在该框中输入一个值并按Enter键) 正如您所看到的那样,但是当用户将新值放入文本框时,如何获取id和值?
基本上,我需要得到这样的价值:
var theId = $(this)id;
var newValue = $(this)value;
// console.log(theId+" "+newValue+ " "+savedData);
所以我可以进行AJAX调用以使用新值/ s更新数据库 如果您也可以在代码中添加注释,例如:
// ajax call here
也会受到赞赏!
答案 0 :(得分:2)
我注意到你正在使用jQuery,但实际上更容易获得没有它的值:
var showText = function() {
console.log(this.id);
console.log(this.value);
}
但是,要使用jQuery获取值,只需使用attr()
和val()
:
var showText = function() {
// Cache $(this) since we're
// using it more than once.
var $this = $(this)
console.log($this.attr('id'))
console.log($this.val())
}
答案 1 :(得分:2)
您可以按如下方式使用纯JavaScript:
var theId = this.id; //or $(this).attr('id');
和
var newValue = this.value; //or $(this).val();
THE HOW& WHERE 强>
var showText = function () {
$(this).hide();//show text
$(this.nextElementSibling).show();//hide input
$.ajax({
url: '....',
data: {id: this.id, value: this.value},
....
});
};
答案 2 :(得分:2)
对于任何输入元素使用Jquery,您可以使用.val()函数。所以你的语法就像
$("selector").val();
现在这个选择器的语法将继续变化。例如,如果您想获得输入元素的任何特定id的值,请使用"#"。因此,如果您的输入字段的ID为" testId"你会做的
<input type="text" id="testId" class ="testClass"/>
$("#testId").val();
如果您想要相同的值,但是在类属性的帮助下,您将执行
来代替id$(".testClass").val();
现在,如果你有一些除输入字段以外的其他字段,理想情况下你应该使用.text()。
因此,如果你有一个id为testDiv的div,你只需要做
<div id ="testDiv" class="testDivClass">Test</div>
$("#testDiv").text();
$(".testDivClass").text();
只是一个建议,因为你正在学习jQuery,现在不要使用混合的东西(混合核心javascript)只是为了完成所有的工作。这样你可能不得不花一些时间学习东西,但最终你会以更好的方式学习东西
希望这会有所帮助。
快乐学习
答案 3 :(得分:1)
使用.attr()
和.val()
获取属性和值:
$(this).attr('id');
和
$(this).val();