2011-10-25 83 views
1

如果日期已填充,如何獲取字段#id_start_date的值?獲取預填充字段的值

我嘗試這樣做:

var sd = $("#id_start_date").val(); 
$("span.start_date").text(sd); 

,並試圖把它.change()或。點擊()內,但它沒有工作,由於它是由程序改變,而不是手動。

編輯

這裏是我的HTML的形式部分。

.... 
<tr> 
    <th>Start date</th> 
    <td><input id="id_start_date" type="text" class="datepicker date_field" name="start_date" size="14" /></td> 
</tr> 
.... 

有什麼想法或建議嗎?

史蒂夫

+2

你能不能顯示html部分? –

+1

不是模板代碼 - 瀏覽器接收的實際HTML。 – Blazemonger

+0

theres實際的HTML現在 – TheLifeOfSteve

回答

0

我發現了什麼我的問題是,我想我會發布它在這裏,以防其他人遇到類似的問題。

有一個AJAX調用,其中有start_date,所以我把代碼放在AJAX調用中,它工作。

$.ajax({ 
     type: "POST", 
     url: "{% url whatever %}", 
     dataType: "json", 
     data: q, 
     success: function(json) { 
      $("#id_maturity_date").val(json.maturity_date); 
      var mat = $("#id_maturity_date").val(); 
      $("span.mat_date").text(mat); 

      $("#id_start_date").val(json.start_date); 
      var sd = $("#id_start_date").val(); 
      $("span.start_date").text(sd); 

      $("#id_term_years").val(json.term_years); 
      $("#id_term_months").val(json.term_months); 
      ... 
     } 
    }); 

出於某種原因,.change()不火的時候,它被填充這種方式,所以我從來沒有能夠獲得的價值,除非我的AJAX調用裏面去了。

謝謝大家的意見。

0

如果該日期是在 span,那麼你應該能夠做到這一點

$("#id_start_date span.start_date").text();

看着你剛剛發佈的HTML,你可以這樣做

$('#id_start_date').val();

+0

日期不在跨度。我正在給這個值分配 – TheLifeOfSteve

+0

的權利。我真正的問題是讓.change()觸發。當它自動填充時,它不會觸發更改。僅當我之後手動更改它時 – TheLifeOfSteve

+0

它是如何填充的? –

0

if is a input text您的代碼將工作:

var sd = $("#id_start_date").val(); 

,但如果是一個文本(字符串字段)

必須使用:

var sd = $("#id_start_date").text(); 
+0

我得不到的起始日期值雖然 – TheLifeOfSteve

+0

告訴我們您的HTML –

+0

打算把它作爲一個編輯,現在 – TheLifeOfSteve