如何获取在$(document).ready函数上设置的字段的值?

时间:2012-07-12 03:26:57

标签: php javascript ajax jquery

我目前通过javascript设置了一个文本框值。但是当我试图获得这个价值时 $(“#idField”)。val(),我得到空值。

我应该如何获得那些文本框值?

我想做的是like this

3 个答案:

答案 0 :(得分:0)

确保#idField存在(唯一ID)

.val()仅适用于input / select / textarea元素,如果你想要文本只需使用.text(),如果你想html只使用.html();

<script type="text/javascript" charset="utf-8">
    jQuery(document).ready(function($){
        var user_name = $('#user_name').val();

        alert(user_name);
    });
</script>
<label for="user_name">Label</label>
<input type="text" name="user[name]" value="User name" id="user_name">

答案 1 :(得分:0)

  • 确保正确包含jQuery库。

  • 确认您在为其分配了一些值后尝试访问textfield值,而不是在分配之前。

  • 确保ID是唯一的。

  • 要将值设置为textfield,语法为:$("#idField").val('some value')

  • 设定后,您可以获得价值。

  • 如果您尝试使用任何variable分配值,请检查variable是否有值或null。使用变量设置值:

    var myVar = 'some value';
    $("#idField").val( myVar );
    
  • 尝试使用firebug /类似调试器来捕获错误(如果你没有运气)

答案 2 :(得分:0)

没有参数的

.val()在调用函数时获取字段的值,但是如果你的“#idField”元素尚未被解析,那么$("#idField")将找不到它然后.val()将是undefined。这就是为什么你需要运行脚本来操作文档就绪处理程序中的DOM或正文末尾的脚本块。

对于你的小提琴,你真的不清楚你想要做什么,但你正在声明并初始化你的field_one_val变量:

var field_one_val = $("#field_one").val();

...在页面加载时,该字段实际为空,因此field_one_val最终为空字符串。

然后在您的点击处理程序中使用该变量:

$("#field_two").val('val '+field_one_val +' added to this field');

...但它仍然是一个空字符串。

如果你想要做的是点击第二个字段,那么获取当时第一个字段的值,然后执行以下操作:

$("#field_two").val('val ' + $("#field_one").val() + ' added to this field');

如此更新演示中所示:http://jsfiddle.net/g3vng/2/