2011-02-24 8 views
1

の下に、Zendeskのカスタムコードがあります。私は日付/時刻スニペットを実装するまで、すべてうまく動作します。 - 「チケットの印刷」というボタンがあるdate.properties.getElementByIdが動作していない時間

1:

通常、スクリプトは次のように動作します。

2 - このボタンには、印刷の準備が整ったプリンタフレンドリページを開くonclickイベントがあります。

日付/時刻コードを実装した後(私がうまくやったことはないと思う)、私はチケットの印刷版を入手するだけですが、時間は表示されません。 (実際には何も起こっていません)

唯一のことは、残りの印刷可能なフォームなしで日付と時刻が表示されることです。

私はジャバスクリプトのplacemanetが、それは誰もがこれで私を助けてくださいJavaScriptの

によっても生成されたヘッド部にある必要があり、目の右の場所ではないと思いますか?または例の嵐の中で私に何をすべきか教えてください。

<style> 
input.createtable { 
    display:none; 
} 
</style> 
<script language="JavaScript"> 

// Get today's current date. 
var now = new Date(); 

// Array list of days. 
var days = new Array('Sunday','Monday','Tuesday','Wednesday','Thursday','Friday','Saturday'); 

// Array list of months. 
var months = new Array('January','February','March','April','May','June','July','August','September','October','November','December'); 

// Calculate the number of the current day in the week. 
var date = ((now.getDate()<10) ? "0" : "")+ now.getDate(); 

// Calculate four digit year. 
function fourdigits(number) { 
    return (number < 1000) ? number + 1900 : number; 
           } 

// Join it all together 
today = days[now.getDay()] + ", " + 
     months[now.getMonth()] + " " + 
     date + ", " + 
     (fourdigits(now.getYear())) ; 

// Print out the data. 
// document.write(today); 

// Begin altered code 

document.getElementById("date").innerHTML = today; 

// End altered code 

// End --> 
</script> 
<script language="JavaScript"> 
<!-- 
writeConsole = function(content) { 
top.consoleRef=window.open('','myconsole', 
    'width=800,height=800' 
    +',menubar=0' 
    +',toolbar=0' 
    +',status=0' 
    +',scrollbars=1' 
    +',resizable=1') 
// top.consoleRef.document.open("text/html","replace"); 
top.consoleRef.document.writeln(
    '<html><head><title>Signature Page</title></head>' 
+'<style>th {color: #FFFFFF;border-bottom: 1px solid #000000;background-color:#CCCCCC;}tr {color: #000000;border-bottom: 1px solid #cccccc;}td.small {color: #000000; font-size: 12px; font-family: Verdana, Arial, Helvetica, sans-serif;}td.large {color: #000000; font-size: 120%; font-family: Arial, Helvetica, sans-serif;font-weight: bold; text-align:center;}</style>' 
+'<link href="http://asset3.zendesk.com/stylesheets_old/zd_print.css?1270161524" media="print" rel="stylesheet" type="text/css" />' 
+'<body onLoad="self.focus()" style="background: white; font-size: 11px; font-family: Verdana, Arial, Helvetica, sans-serif">' 
+'<center><A HREF="javascript:window.print()">Print Werkorder</A></center>' 
+'<table width="100%"><tr><td align="left" valign="middle">' 
+'</td><br />' 
+'www.domain.nl<br />' 
+'Tel: 058-111111111<br />' 
+'E-mail [email protected]' 
+'</tr></table>' 
+content 
+'</body></html>' 
) 
top.consoleRef.document.close() 
} 
//--> 
</script> 


<form> 
    <input class="createtable" name=userInput type=textarea size="1" value="<table width=100% height=825 border=0 cellpadding=6 cellspacing=4> 
    <tr> 
    <th colspan=6><h1>WERKORDER NR#: {{ticket.id}}</h1></th> 
    </tr> 
    <tr> 
    <td colspan=6><hr width=100% noshade=noshade /></td> 
    </tr> 
    <tr> 
    <td width=13% valign=top><strong>Klantinformatie:</strong></td> 
    <td width=87% align=left valign=top><p><strong>Datum: <div id=date></div> 

    <br /> 
     Naam</strong>: {{ticket.requester.name}}<br /> 
     <strong>Bedrijf:</strong> {{ticket.organization.name}}<br /> 
     <strong>Telefoonnummer:</strong> {{ticket.ticket_field_484140}}<br /> 
    <strong>E-mail:</strong> {{ticket.requester.email}}</p></td> 
    </tr> 
    <tr> 
    <td valign=top><strong>In ontvangst genomen:</strong></td> 
    <td align=left valign=top><strong>Merk &amp; Model:</strong> {{ticket.ticket_field_483591}}<br /> 
     <strong>Hardware Type:</strong> {{ticket.ticket_field_484179}}<br /> 
     <strong>Uitbesteed:</strong> {{ticket.ticket_field_483608}}<br /> 
    <strong>Prioriteit:</strong> {{ticket.priority}}</td> 
    </tr> 
    <tr> 
    <td colspan=6><hr width=100% noshade=noshade /></td> 
    </tr> 
    <tr> 
    <td valign=top><strong>Overeengekomen:</strong></td> 
    <td colspan=5 rowspan=2 valign=top><p>&nbsp;</p></td> 
    </tr> 
    <tr> 
    <td>&nbsp;</td> 
    </tr> 
    <tr> 
    <td colspan=6><hr width=100% noshade=noshade /></td> 
    </tr> 
    <tr> 
    <td valign=top><strong>Handtekening voor akkoord:</strong></td> 
    <td colspan=5><table width=100% border=0 cellspacing=7 cellpadding=7> 
     <tr> 
     <td width=33%>&nbsp;</td> 
     <td width=33%>&nbsp;</td> 
     <td width=31%>&nbsp;</td> 
     </tr> 
     <tr> 
     <td width=33%><hr noshade=noshade /></td> 
     <td width=33%><hr /></td> 
     <td><hr /></td> 
     </tr> 
     <tr> 
     <td width=33%> {{ticket.requester.name}} </td> 
     <td width=33%>Datum:</td> 
     <td>Plaats:</td> 
     </tr> 
     </table>  <p><br /> 
    </p></td> 
    </tr> 
</table>"> 
    <input type=button value="Print Werkorder" 
onClick="writeConsole(this.form.userInput.value)" 
> 
</form> 

編集質問

は、これは私が今持っているもの、フォームが再び表示されますが、日付なし、これはなぜですか?私は再び短期的にコードを投稿します

変更のjavascript:

<script language="JavaScript"> 

// Get today's current date. 
var now = new Date(); 

// Array list of days. 
var days = new Array('Sunday','Monday','Tuesday','Wednesday','Thursday','Friday','Saturday'); 

// Array list of months. 
var months = new Array('January','February','March','April','May','June','July','August','September','October','November','December'); 

// Calculate the number of the current day in the week. 
var date = ((now.getDate()<10) ? "0" : "")+ now.getDate(); 

// Calculate four digit year. 
function fourdigits(number) { 
    return (number < 1000) ? number + 1900 : number; 
           } 

// Join it all together 
today = days[now.getDay()] + ", " + 
     months[now.getMonth()] + " " + 
     date + ", " + 
     (fourdigits(now.getYear())) ; 

// Print out the data. 
// document.write(today); 

// Begin altered code 

document.getElementById("date").innerHTML = today; 

// End altered code 

// End --> 
</script> 
+0

Stack Overflowで単なる書式設定のものなのかどうかわかりませんが、HTML属性の引用符がないようです。 –

+0

それはすべてそれを働かせるために必要と思う、それはサンプルコード – Chris

答えて

0

こんにちは だけ
次の行を追加しますtop.consoleRef.document.getElementById( '日付').innerHTML = today; top.consoleRef.document.close()


、次の行をコメント。

//document.getElementById("date").innerHTML = today;

これは、date要素がtextboxの値であり、DOMの一部ではないためです。 これをドキュメントに書き込んだ後、DOMを介してアクセスできます。

+0

ありがとうトン、あなたからの1行、そして最終的に支払ったGoogleの3日/夕方:D – Chris

関連する問題