OpenClinica 使用者手冊/VarsFromHeader
在極少數情況下,您可能需要將 CRF 標題中的一些內容複製到您的 CRF 中。例如,站點名稱或入組時的年齡。這些資訊都在 CRF 的標題中,但大多數情況下是不可見的,因為標題是摺疊的。當您單擊 CRF 標題資訊連結時,會顯示一個包含資訊的表格。

在您的 CRF 中獲取這些資訊的方法是使用 JavaScript。讓我們看看獲取事件名稱的指令碼。首先,您要確定將從標題中獲取事件名稱的 CRF 專案,在我們的例子中,我們將該專案稱為“Event”。為了讓 JavaScript 識別此輸入為我們想要使用的輸入,我們將一個 div 標籤新增到 LEFT_ITEM_TEXT 中,用 <div id="event">Event from header</div>
在 RIGHT_ITEM_TEXT 中,我們放置指令碼。

指令碼是
<script src="includes/jmesa/jquery.min.js"></script>
<script>
jQuery(document).ready(function($) {
var fieldEvent = $("#event").parent().parent().find("input");
fieldEvent.attr("readonly", true);
if(fieldEvent.val()===""){
var event = $(".tablebox_center").find("tbody:first").children("tr:nth-child(1)").children("td:nth-child(2)").text();
event = $.trim(event);
fieldEvent.val(event);
fieldEvent.change();
}
});
</script>
它所做的是透過檢視我們稱為“event”的元素的父元素的父元素來查詢要使用的輸入,然後查詢輸入。
然後它將此輸入設定為只讀。
然後它檢查輸入是否為空,如果是,則轉到第一個具有類“tablebox_center”的元素,該元素是包含完整標題的框。
從那裡,它查詢第一個表格主體,其中包含目標元素(這與標題的設計方式有關)。
對於事件,我們幾乎到了:它在第一行,第二個 td 中。
其他變數可以用非常類似的方式找到
事件發生次數:children("tr:nth-child(2)").children("td:nth-child(2)").text(); (但它不在圖片上)
性別:children("tr:nth-child(1)").children("td:nth-child(4)").text();
入組時的年齡:children("tr:nth-child(2)").children("td:nth-child(4)").text();
研究:children("tr:nth-child(3)").children("td:nth-child(2)").text();
出生日期:children("tr:nth-child(3)").children("td:nth-child(4)").text();
站點:children("tr:nth-child(4)").children("td:nth-child(2)").text();
人員 ID:children("tr:nth-child(4)").children("td:nth-child(4)").text();
請記住,您在研究構建中定義了這些變數中的哪些將在您的標題中顯示。此外,出生日期不是標準日期格式,因此您不能將其視為 DATA_TYPE DATE。