2012-01-23 2 views
-1

Я использую struts2 datetimepicker тег на моей странице jsp для выбора даты. Мне нужно автоматически заполнить дату, выбранную в date1, в поле date2. Я попытался использовать javascript и dojo, чтобы сделать это, но дата не заполняется автоматически. Пожалуйста, помогите мне в этом.Заполнение даты в другое поле даты

Этот код, который я пробовал.

<%@ taglib prefix="s" uri="/struts-tags" %> 
<%@ taglib prefix="sd" uri="/struts-dojo-tags" %> 

<html> 
<head> 
<script language="JavaScript" type="text/javascript"> 
    // Dojo configuration 
    djConfig = { 
     isDebug: false, 
     bindEncoding: "UTF-8" 
      ,baseRelativePath: "/WebContent/WEB-INF/dojo-release-1.7.1/dojo/" 
      ,baseScriptUri: "/WebContent/WEB-INF/dojo-release-1.7.1/dojo/" 
     ,parseWidgets : false 
    }; 
</script> 
<script language="JavaScript" type="text/javascript" 
     src="/WebContent/WEB-INF/dojo-release-1.7.1/dojo/dojo.js"></script> 

<script type="text/javascript"> 
    dojo.require("dojo.event.*"); 
    dojo.require("dojo.widget.*"); 
    dojo.require("dojo.widget.Button"); 

    dojo.addOnLoad(init); 

function populate(){ 
alert(ab); 
} 
function init() 
{ 
var ab = dojo.widget.byId('id1'); 
dojo.event.connect(ab, 'onblur', 'populate') 
} 
</script> 
<sd:head/> 

</head> 

<body> 
<s:form action="resultAction.action" method="post"> 
<sd:datetimepicker name="date1" displayFormat="yyyy-MM-dd" label="Select Date(yyyy-mm-dd):" id="id1" onblur="populate();"/> 
<sd:datetimepicker name="date2" displayFormat="yyyy-MM-dd" label="Select Date(yyyy-mm-dd):" id="id2" /> 
<s:submit></s:submit> 
</s:form> 
</body> 
</html> 
+0

где код? Какая ошибка? –

+2

показать код, который вы пробовали –

+0

-1: спросите, пожалуйста. Контекст был бы приятным. – Blender

ответ

0

Вы попробовали метод setValue() на додзё-элементе?

function populate(){ 
    dojo.widget.byId("id2").setValue(dojo.widget.byId("id1").getValue()); 
} 
+0

также, я бы использовал событие onchange, а не 'onblur'. – Dementic

+0

Я пробовал это, но для меня сама функция populate() не вызвана. – Hari

+0

Попробуйте сделать onblur = "alert ('Hi'); populate();" и дайте мне знать, если вы увидите предупреждение. –