使用脚本标记应用javascript

使用脚本标记应用javascript,javascript,import,tags,Javascript,Import,Tags,我有一个页面,用户可以在其中创建自己的脚本来修改服务器上的文本(不要担心访问仅限于少数用户)。因此,用户只能填写三个字段,一个是规则名称,另一个是要替换的表达式,最后一个是要替换的内容: <label id="name">Name: </label> <input type="text" name="ruleName" size="50" id="ruleName"></input> </br> <label id="input"

我有一个页面,用户可以在其中创建自己的脚本来修改服务器上的文本(不要担心访问仅限于少数用户)。因此,用户只能填写三个字段,一个是规则名称,另一个是要替换的表达式,最后一个是要替换的内容:

<label id="name">Name: </label> <input type="text" name="ruleName" size="50" id="ruleName"></input> </br>
<label id="input">Replace: </label> <input type="text" size="50" name="inputStep1" id="inputStep1"></input> </br>
<label id="output">By:</label> <input type="text" size="50" id="outputStep1"></input></br>
名称:
替换:
作者:
之后,这些规则通过
php
post存储在服务器上的一个文件中(我将为您提供此命令不必要的详细信息…)。然后,这些规则在一个带有复选框的表单中列出,我希望在单击复选框时应用规则

我唯一能想到的就是通过一个脚本标记导入脚本文件,但只有通过导入它,它才不会运行内部脚本

我该怎么做


谢谢

如果我理解你的意思是正确的,那么你必须创建一个包含如下内容的脚本文件

在服务器上生成脚本:

// i would approch this totally differt, because i would not let user generate script on the server, but to answer the question ...
function executeRule(){ // name of the function is probably the Rulename and must be unique
  document.getElementyId("withRules").innHTML = document.getElementyId("withRules").innHTML.replace('[userenteredvalue1]','[userenteredvalue2]');
}
//当选择radiobutton(单选按钮)时,应仅执行此代码

然后我会根据html-script-tag添加脚本

<script src="/generated_user_script.js"></script> <!-- a line per generated script -->

然后在选择时(当设置了选中的属性时,
onchange
/
onclick
事件),我将调用函数quick an dirty.) 如果你有很多规则,你需要统一的名称,这样它们就不会覆盖自己,等等

这表示另一种方法是javascript代码不创建会更好。
如果只是替换功能,可能是您可以存储输入和输出值等等。

我不完全理解您的问题。保存的脚本是Java脚本吗?应该如何执行(使用哪些参数)。。。?省略不必要的细节是好的,但我需要更多的上下文来理解正在发生什么/应该发生什么。也许你可以帮我填空……最重要的是,“规则”是什么样子的?我想他会发布一张表格,然后得到单选按钮列表。选择单选按钮后,他想再次发布表单。这就是我从他的问题中得到的。对不起,如果我不是很清楚,我会尝试重新措辞。我有一个用户定义的javascript文件存储在服务器上,如下所示:1=document.getElementById('withRules').innerHTML.replace('ccc','ddd');document.getElementById('withRules')。innerHTML=1;然后我需要当一个单选按钮被选中时,该文件的内容被应用…只是想问一下你的问题是否得到了回答?谢谢你的回答,但我最大的问题是创建一个唯一的名称,因为我有一个标题字段,但是它会包含一些空格,所以我不能将其用作函数名……您可以使用规则的名称,用下划线替换空格,如果您想保存,可以在末尾附加一个随机数/时间戳。因此,“用B替换A”将创建一个文件名,如“用B替换A”或“用B替换A”56234356246。这只是一个想法。:)是的,我想那会成功的,我会让你知道的!谢谢