簡體   English   中英

.val()和.text()不起作用?

[英].val() and .text() don't work?

我想通過php和表格標簽發送div內容。 我有2個這些類的div:

.simpleCart_items
.simpleCart_total

我想從這些div中獲取內容並將其內容插入input或textareas,然后將表單提交到我的php文件。

我寫了這個JQuery代碼:

$('#shopform').submit(function(){
  var items = $('.simpleCart_items').text();
  var tprice = $('.simpleCart_total').text();
  $('#itemsinfo').val(items);
  $('#totalprice').val(tprice);
});

這些是我的意見:

<textarea id="itemsinfo" style="width:320px; height:160px"></textarea>

<input type="text" id="totalprice"/>

但它不起作用。 內容沒有移動到輸入標簽。

它必須是您向我們展示的HTML或腳本中的其他內容,因為當我使用您的代碼設置一個簡單的測試時,它在這里工作正常: http//jsfiddle.net/jfriend00/7q6DP/

這對我來說非常好(在Chrome,Firefox,Safari和IE中):

HTML:

<button id="submitForm">Submit</button>
<div class="simpleCart_items">simpleCart items text</div>
<div class="simpleCart_total">simpleCart total</div>

<textarea id="itemsinfo" style="width:320px height:160px"></textarea><br>
<input type="text" id="totalprice"/>

Javascript (頁面加載后):

$('#submitForm').click(function(){
  var items = $('.simpleCart_items').text();
  var tprice = $('.simpleCart_total').text();
  $('#itemsinfo').val(items);
  $('#totalprice').val(tprice);
});

請顯示您的其余代碼和HTML。

要檢查的事項是:

  1. 錯誤控制台或調試器控制台中是否顯示任何javascript錯誤?
  2. 您是否在頁面加載后初始化事件處理程序?
  3. 按下提交按鈕時,調試控制台中是否顯示任何javascript錯誤?
  4. 你的submitForm事件處理程序是否被調用? 如果您設置斷點或在其中發出警報,它是否會被擊中?
  5. 你可以在提交處理程序中設置一個斷點,看看item或tprice的值是怎么回事?
  6. 將它們放入HTML時,請確保您的類名稱沒有前導句點。 它應該是class="simpleCart_items" ,而不是class=".simpleCart_items"

當我把它放在頁面中時,你的代碼工作得很好:

http://jsfiddle.net/Guffa/krYQh/

單擊“提交”按鈕時,將使用數據填充字段。 (我在提交事件處理程序中添加了一個return false ,只是為了防止表單發布。)

您的代碼中可能存在一些錯誤:

  • 您使用了class=".simpleCart_items"而不是class="simpleCart_items"
  • 表單沒有id="shopform"
  • 您在任何其他元素上使用了ids shopformitemsinfototalprice

我想你應該使用“.html()”代替“.text”,如下所示。

  $('#shopform').submit(function(){   
  var items = $('.simpleCart_items').html();   
  var tprice = $('.simpleCart_total').html();   

    $('#itemsinfo').html(items);   
    $('#totalprice').val(tprice); 
  });

我想你應該使用.innerHTML代替.text()

您應該能夠使用.val()來獲取文本區域的值,而不是使用.text()。

嘗試使用警報(項目); 在設置div的內容之前,只是為了確保您實際獲取數據。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM