DNN中的JavaScript

时间:2016-02-17 08:17:53

标签: javascript dotnetnuke

我一直在尝试使用DNN(我已经使用了两周)将JavaScripts添加到网站。我目前的版本是07.04.00(353)。我尝试将我的脚本粘贴到页面设置中的标题内 - >高级设置和模块设置中的标题 - >高级设置,但它似乎不起作用。我已经发布了下面要使用的脚本之一。



<script>
    var radiobtnType = "ensidig";
    var radiobtnOrient = "S";
    var radiobtnHeatCap = "100";
    //var tsvfilepath = data/ensidig_S_100.tsv

    $(".btnType").click(function () {
        radiobtnType = $(this).data('id');
        update_box();
        //var idPaaDenButtonDerBlevTrykketPaa = $(this).text() + $(this).data('id')
        //alert(idPaaDenButtonDerBlevTrykketPaa);
    });
    $(".btnOrientation").click(function () {
        radiobtnOrient = $(this).data('id');
        update_box();
    });
    $(".btnHC").click(function () {
        radiobtnHeatCap = $(this).data('id');
        update_box();
    });

    function update_box() {
        document.getElementById("foo2").value = "data/" + radiobtnType + "_" + radiobtnOrient + "_" + radiobtnHeatCap + ".tsv";
        document.getElementById("pwd").value = "data/" + radiobtnType + "_" + radiobtnOrient + "_" + radiobtnHeatCap + ".tsv";
    }
</script>
&#13;
&#13;
&#13;

2 个答案:

答案 0 :(得分:0)

编辑:

如果您使用DNN 4.9.1或更高版本,则包含jquery(http://www.dnnsoftware.com/community-blog/cid/135141/dotnetnuke-tips-and-tricks-11-using-jquery-in-dotnetnuke)。这意味着您只需要添加文档就绪换行(或者在dnn链接中建议$(function() { /* code goes here */ });)。

-

首先确保您的网页包含jQuery。如果没有,请包括它,例如通过使用cdn:

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.2.0/jquery.min.js"></script>

其次,将代码包装在jQuery的ready()函数中(参见https://learn.jquery.com/using-jquery-core/document-ready/)。

<script>
$(document).ready(function() {

    var radiobtnType = "ensidig";
    var radiobtnOrient = "S";
    var radiobtnHeatCap = "100";
    //var tsvfilepath = data/ensidig_S_100.tsv

    $(".btnType").click(function () {
        radiobtnType = $(this).data('id');
        update_box();
        //var idPaaDenButtonDerBlevTrykketPaa = $(this).text() + $(this).data('id')
        //alert(idPaaDenButtonDerBlevTrykketPaa);
    });
    $(".btnOrientation").click(function () {
        radiobtnOrient = $(this).data('id');
        update_box();
    });
    $(".btnHC").click(function () {
        radiobtnHeatCap = $(this).data('id');
        update_box();
    });

    function update_box() {
        document.getElementById("foo2").value = "data/" + radiobtnType + "_" + radiobtnOrient + "_" + radiobtnHeatCap + ".tsv";
        document.getElementById("pwd").value = "data/" + radiobtnType + "_" + radiobtnOrient + "_" + radiobtnHeatCap + ".tsv";
    }

});
</script>

答案 1 :(得分:0)

DNN 07.04.xx版本默认包含JQuery,所以不用担心。

没有

,你的JQuery就无法运行
$(document).ready(function() { 
     //JQ code here...
});

你也可以使用如下。

<script language="javascript" type="text/javascript">

var radiobtnType = "ensidig";
var radiobtnOrient = "S";
var radiobtnHeatCap = "100";
//var tsvfilepath = data/ensidig_S_100.tsv

$(document).ready(function() {
    $(".btnType").click(function () {
        radiobtnType = $(this).data('id');
        update_box();
        //var idPaaDenButtonDerBlevTrykketPaa = $(this).text() + $(this).data('id')
        //alert(idPaaDenButtonDerBlevTrykketPaa);
    });
    $(".btnOrientation").click(function () {
        radiobtnOrient = $(this).data('id');
        update_box();
    });
    $(".btnHC").click(function () {
        radiobtnHeatCap = $(this).data('id');
        update_box();
    });
});
function update_box() {
    document.getElementById("foo2").value = "data/" + radiobtnType + "_" + radiobtnOrient + "_" + radiobtnHeatCap + ".tsv";
    document.getElementById("pwd").value = "data/" + radiobtnType + "_" + radiobtnOrient + "_" + radiobtnHeatCap + ".tsv";
}
</script>