1

和这span工作div

jQuery

$('#exchange_rate1').html(data[0].FinalCurrencyRate);

HTML

<span id="exchange_rate1"></span>

但是如果 HTML 是一个输入元素,<input type='text' name='exchange_rate1' id='exchange_rate1' value='<?php echo $post_exchange_rate; ?>>那么什么都不会发生。

从相同的内容中删除了php代码。value

我也试过document.getElementById("exchange_rate1").html(data[0].FinalCurrencyRate);,但我也什么也没看到。

现在清楚了,那需要使用val. 我刚刚在谷歌搜索如何在输入字段中插入 jquery 变量。找不到。

4

6 回答 6

8

用于jQueryObject.val(some_value)设置输入的值,而不是html().

于 2013-08-27T12:53:29.180 回答
2

更加具体:

// store the value you're looking to assign
var data = [
  { FinalCurrencyRate: <?= $post_echange_rate; ?> }
];

jQuery方式:

$('#exchange_rate1')               // grab the <input>
  .val(data[0].FinalCurrencyRate); // and assign it from the variable

直接的js方式:

// normal JS version:
document.getElementById('exchange_rate1') // grab the <input>
  .value = data[0].FinalCurrencyRate;     // assign it

任何类型的表单字段 ( <input>, <select>, <textarea>) 都.val()用于获取/设置,因为它们不包含子元素。.html()应该用于结构元素。

于 2013-08-27T12:57:15.683 回答
1

如果text用作

$("#exchange_rate1").val('Hello');
于 2013-08-27T12:53:43.567 回答
1

这是因为您不应该设置元素innerHTML的,而是设置.inputvalue

在 jQuery 中,您使用以下.val()方法:

$('#exchange_rate1').val(data[0].FinalCurrencyRate);

或者使用纯 JavaScript,您正在更改对象的value属性HTMLInputElement

document.getElementById('exchange_rate1').value = data[0].FinalCurrencyRate;
于 2013-08-27T12:54:48.360 回答
1

对于文本输入框,使用.val(),对于文本区域,使用.text(),对于非输入类型元素,使用.html()

于 2013-08-27T12:55:31.723 回答
1

所有你需要的是

$("#exchange_rate1").val('Hello');
于 2013-08-27T12:57:21.343 回答