如何在不手动修改的情况下替换脚本内容

时间:2015-12-27 03:09:57

标签: javascript

以下代码段似乎需要重复输入相同的服务器主机“http://106.232.2.2:3000/

我想知道是否有任何js工具链可以让我以更有效的方式维护它,就像我期望的例子一样。它应该在没有任何后端技术的pruly js中运行。

当前版本

<script src="http://106.232.2.2:3000/assets/jquery-9e7b5a8e0157d7776b987d8963c9c786.js?body=1" data-turbolinks-track="true"></script>
<script src="http://106.232.2.2:3000/assets/jquery_ujs-38e73f935d8e2feac7f47b8c67317969.js?body=1" data-turbolinks-track="true"></script>
<script src="http://106.232.2.2:3000/assets/comment-ce9e9195c9ca532a7968ea39a6e1f67f.js?body=1" data-turbolinks-track="true"></script>
<script src="http://106.232.2.2:3000/assets/application-52b017a9dbb00790db4e22316964e7d9.js?body=1" data-turbolinks-track="true"></script>
<link href="http://106.232.2.2:3000/assets/css/bootstrap-5c674533b683d85b12a4a4b13ee83e70.css" rel="stylesheet">
<link href="http://netdna.bootstrapcdn.com/font-awesome/4.0.3/css/font-awesome.min.css" rel="stylesheet">
<link href="http://106.232.2.2:3000/assets/css/mint-admin-78ba3e0ba257aa211af6ecf2ddf7f553.css" rel="stylesheet">

预期版本

define SERVER_HOST =  http://106.232.2.2:3000
<script src="$SERVER_HOST/assets/jquery-9e7b5a8e0157d7776b987d8963c9c786.js?body=1" data-turbolinks-track="true"></script>
<script src="$SERVER_HOST/assets/jquery_ujs-38e73f935d8e2feac7f47b8c67317969.js?body=1" data-turbolinks-track="true"></script>
<script src="$SERVER_HOST/assets/comment-ce9e9195c9ca532a7968ea39a6e1f67f.js?body=1" data-turbolinks-track="true"></script>
<script src="$SERVER_HOST/assets/application-52b017a9dbb00790db4e22316964e7d9.js?body=1" data-turbolinks-track="true"></script>
<link href="$SERVER_HOST/assets/css/bootstrap-5c674533b683d85b12a4a4b13ee83e70.css" rel="stylesheet">
<link href="http://netdna.bootstrapcdn.com/font-awesome/4.0.3/css/font-awesome.min.css" rel="stylesheet">
<link href="$SERVER_HOST/assets/css/mint-admin-78ba3e0ba257aa211af6ecf2ddf7f553.css" rel="stylesheet">

2 个答案:

答案 0 :(得分:1)

尝试这样的事情。

  <!DOCTYPE html>
    <html lang="en">
    <head>
    <meta charset="utf-8">
    <title>jQuery Bind onclick Event to Dynamically added Elements</title>
    <script type="text/javascript" src="http://code.jquery.com/jquery.min.js"></script>
    <script type="text/javascript" src="scriptj.js"></script>
    <script type="text/javascript">
        i=0;
        $(document).ready(function(){
            $("#add").click(function func(){
                ++i;
                console.log(i);
                var rem = 'remove' + i; //  here the ids are generating but they 
                var tblid = 'id' + i;   // not going inside append function
                var imgdiv = 'idiv' + i; 
                var imag = 'img' + i;
                $("#diva").append("<div id=tblid style='border:2px solid black; border-radius:5px;'><table align='right'><tr><td><a href='javascript:void(0);' id=rem >Delete</a></td></tr></table><table  align='center'><tr><td>Section Title</td><td><input type='textbox' size='160' /></td></tr><tr><td>Descrtiption</td><td><textarea rows='5' cols='162' style='border-radius:5px;'></textarea><td></tr></table><br>&nbsp &nbsp<input type='file' onchange='readURL(this);'/><div id=imgdiv style='border: 1px solid black'><img id=imag alt='your image' /></div></div><br>"); 
            });
            $(document).on("click", "a#rem" , function() {  
                $(this).parent().parent().parent().parent().parent().remove();  
            });
        }); 
    </script>
    </head> 
    <body>
        <table><tr><td><button id="add" style='border-radius:3px;'>Add Section</button></td></tr></table>
        <br>
        <div id="diva">

        </div>
    </body> 
    </html>  

选项2(HTML选项)

var baseUrl = 'http://106.232.2.2:3000';

var urlArray = ["/assets/jquery-9e7b5a8e0157d7776b987d8963c9c786.js?body=1",
                "/assets/jquery_ujs-38e73f935d8e2feac7f47b8c67317969.js?body=1"];
var s;

for(var i = 0 ; i < urlArray.length; i ++) {
    s = document.createElement('script');
    s.src = baseUrl + urlArray[i];
    document.getElementsByTagName('head')[0].appendChild(s);
}

答案 1 :(得分:1)

我觉得那里有点矛盾:

  

我想知道是否有任何js工具链......

     

它应该在没有任何后端技术的pruly js中运行。

无论如何,您可以动态插入这些脚本和链接标记:

var SERVER_HOST = 'http://106.232.2.2:3000';
var scriptTag = document.createElement('script');
scriptTag.setAttribute('src', SERVER_HOST + '/assets/jquery-9e7b5a8e0157d7776b987d8963c9c786.js?body=1');
scriptTag.setAttribute('data-turbolinks-track', 'true');
document.head.appendChild(scriptTag);