jquery中html、val与text三者属性取值的联系与区别介绍


在jQuery中,`html()`, `val()`, 和 `text()` 方法都是用于获取或设置元素内容的,但它们各自的作用和适用场景有所不同。

### 1. `html()`

- **作用**:用于获取或设置选定元素的HTML内容(包括其标签和文本)。

- **适用场景**:当你需要获取或修改元素的完整HTML结构时使用。

- **取值**:如果用于取值,它会返回选定元素的HTML内容(包括标签)。

- **示例**:


  // 获取元素内容
  var content = $('#elementId').html();
  
  // 设置元素内容
  $('#elementId').html('<p>新的内容</p>');
  

### 2. `val()`

- **作用**:主要用于获取或设置表单元素(如input, select, textarea等)的值。

- **适用场景**:当你需要处理表单元素的值时。

- **取值**:如果用于取值,它会返回表单元素的值。

- **示例**:


  // 获取input元素的值
  var inputValue = $('#inputElementId').val();
  
  // 设置input元素的值
  $('#inputElementId').val('新的值');
  

### 3. `text()`

- **作用**:用于获取或设置选定元素的文本内容(不包括标签)。

- **适用场景**:当你需要获取或修改元素的纯文本内容时。

- **取值**:如果用于取值,它会返回选定元素的文本内容(不包括标签)。

- **示例**:


  // 获取元素文本
  var textContent = $('#elementId').text();
  
  // 设置元素文本
  $('#elementId').text('新的文本内容');
  

### 联系与区别

- **联系**:它们都用于操作元素的内容,但操作的内容和场景不同。

- **区别**:

- `html()` 操作的是HTML内容,包括标签。

- `val()` 主要用于表单元素,操作的是元素的值。

- `text()` 操作的是纯文本内容,不包括标签。

选择使用哪个方法取决于你的具体需求和你需要操作的元素类型。