Javascript 在内容编辑器web部件Sharepoint 2007中添加两个或多个脚本jquery
我想在我的NewForm.aspx中插入两个或更多jquery脚本。我在内容编辑器web部件中编写了与许多在线教程相同的代码 我有两个单独工作的脚本,但是当我合并脚本时,它就不工作了(只工作两个脚本中的一个) 这是我在内容编辑器中的代码:Javascript 在内容编辑器web部件Sharepoint 2007中添加两个或多个脚本jquery,javascript,jquery,sharepoint,sharepoint-2007,content-editor,Javascript,Jquery,Sharepoint,Sharepoint 2007,Content Editor,我想在我的NewForm.aspx中插入两个或更多jquery脚本。我在内容编辑器web部件中编写了与许多在线教程相同的代码 我有两个单独工作的脚本,但是当我合并脚本时,它就不工作了(只工作两个脚本中的一个) 这是我在内容编辑器中的代码: <p> <script src="http://ajax.aspnetcdn.com/ajax/jquery/jquery-1.5.js"> </script> <script ty
<p>
<script src="http://ajax.aspnetcdn.com/ajax/jquery/jquery-1.5.js">
</script>
<script type="text/javascript">
function HideColumn(targetColumn, hideColumn) {
var columnObj = $("input[Title='" + hideColumn + "']");
$("input[Title='" + targetColumn + "']").bind('click',function() {
if($(this).is(':checked')) {
columnObj.closest("tr").show();
}
else {
columnObj.closest("tr").hide();
}
});
}
$(document).ready(function() {
HideColumn('sino','descrizione');
});
</script>
<script src="http://ajax.aspnetcdn.com/ajax/jquery/jquery-1.5.js">
</script>
<script type="text/javascript">
function HideColumn(targetColumn, hideColumn) {
var columnObj = $("input[Title='" + hideColumn + "']");
$("select[Title='" + targetColumn + "']").bind('click',function() {
if($(this).val() == "Pippo") {
columnObj.closest("tr").show();
}
else {
columnObj.closest("tr").hide();
}
});
}
$(document).ready(function() {
HideColumn('Scelta','descrizione');
});
</script>
</p>
函数HideColumn(targetColumn,HideColumn){
var columnObj=$(“输入[标题=”+hideColumn+“]”);
$(“输入[Title='”+targetColumn+“]])。绑定('click',function(){
如果($(this).is(':checked'){
columnObj.closest(“tr”).show();
}
否则{
columnObj.closest(“tr”).hide();
}
});
}
$(文档).ready(函数(){
HideColumn('sino','Descriptione');
});
函数HideColumn(targetColumn,HideColumn){
var columnObj=$(“输入[标题=”+hideColumn+“]”);
$(“选择[Title=”+targetColumn+“]”)。绑定('click',function(){
如果($(this.val()=“Pippo”){
columnObj.closest(“tr”).show();
}
否则{
columnObj.closest(“tr”).hide();
}
});
}
$(文档).ready(函数(){
HideColumn('Scelta','Descriptione');
});
谢谢你的帮助
编辑已解决的问题:
This is the correct code:
<p>
<script src="http://ajax.aspnetcdn.com/ajax/jquery/jquery-1.5.js">
</script>
<script type="text/javascript">
function HideColumn(targetColumn1, hideColumn1, targetColumn2, hideColumn2) {
var columnObj1 = $("input[Title='" + hideColumn1 + "']");
$("input[Title='" + targetColumn1 + "']").bind('click',function() {
if($(this).is(':checked')) {
columnObj1.closest("tr").show();
}
else {
columnObj1.closest("tr").hide();
}
});
var columnObj2 = $("input[Title='" + hideColumn2 + "']");
$("select[Title='" + targetColumn2 + "']").bind('click',function() {
if($(this).val() == "Pippo") {
columnObj2.closest("tr").show();
}
else {
columnObj2.closest("tr").hide();
}
});
}
$(document).ready(function() {
HideColumn('sino','descrizione','Scelta','Titolo');
});
</script>
</p>
这是正确的代码:
函数HideColumn(targetColumn1,hideColumn1,targetColumn2,hideColumn2){
var columnObj1=$(“输入[Title='”+hideColumn1+'”);
$(“输入[Title=”+targetColumn1+“]])。绑定('click',function(){
如果($(this).is(':checked'){
columnObj1.closest(“tr”).show();
}
否则{
columnObj1.closest(“tr”).hide();
}
});
var columnObj2=$(“输入[Title='”+hideColumn2+'”);
$(“选择[Title=”+targetColumn2+“]])。绑定('click',function(){
如果($(this.val()=“Pippo”){
columnObj2.closest(“tr”).show();
}
否则{
columnObj2.closest(“tr”).hide();
}
});
}
$(文档).ready(函数(){
HideColumn(‘sino’、‘Descriptione’、‘Scelta’、‘Titolo’);
});
问候,,
Francesco我看到了一些问题,一些问题将彻底打破这一点(重复的功能定义),另一些问题则不是最佳设计。您不需要两次加载jQuery库,也不应该用不同的内容两次定义同一个函数 试试这个:
函数HideColumn(targetColumn,HideColumn){
var columnObj=$(“输入[标题=”+hideColumn+“]”);
$(“输入[Title='”+targetColumn+“]])。绑定('click',function(){
如果($(this).is(':checked')|$(this.val()==“Pippo”){
columnObj.closest(“tr”).show();
}
否则{
columnObj.closest(“tr”).hide();
}
});
}
$(文档).ready(函数(){
HideColumn('sino','Descriptione');
HideColumn('Scelta','Descriptione');
});
在初始页面加载时也有隐藏某些列的能力,请考虑以下内容:
更新:<script src="http://ajax.aspnetcdn.com/ajax/jquery/jquery-1.5.js"></script>
<script type="text/javascript">
function HideColumnOnLoad(hideColumn) {
$("input[Title='" + hideColumn + "']").closest("tr").hide();
}
function HideColumnOnClick(targetColumn, hideColumn) {
var columnObj = $("input[Title='" + hideColumn + "']");
$("input[Title='" + targetColumn + "']").bind('click',function() {
if($(this).is(':checked') || $(this).val() == "Pippo") {
columnObj.closest("tr").show();
}
else {
columnObj.closest("tr").hide();
}
});
}
$(document).ready(function() {
HideColumnOnLoad('descrizione');
HideColumnOnClick('sino','descrizione');
HideColumnOnClick('Scelta','descrizione');
});
</script>
函数HideColumnOnLoad(hideColumn){
$(“输入[Title=”+hideColumn+“]])。最近的(“tr”).hide();
}
函数HideColumnOnClick(targetColumn,hideColumn){
var columnObj=$(“输入[标题=”+hideColumn+“]”);
$(“输入[Title='”+targetColumn+“]])。绑定('click',function(){
如果($(this).is(':checked')|$(this.val()==“Pippo”){
columnObj.closest(“tr”).show();
}
否则{
columnObj.closest(“tr”).hide();
}
});
}
$(文档).ready(函数(){
HideColumnOnLoad(“描述”);
HideColumnOnClick('sino','Descriptione');
HideColumnOnClick('Scelta','Descriptione');
});
感谢您的回复……它很有效!另一个问题..打开新表单时是否可以隐藏行?在我的例子中,“sino”默认为“no”,但我看到了“descripione”。当我打开表单时,我想隐藏“描述”。谢谢我试图隐藏一行“日期”字段。它仅隐藏字段,而不隐藏行。我必须使用不同的设置吗?非常感谢你!关于:日期字段,这是因为SharePoint使用嵌套表作为弹出日历日期选择器的输入和图标的标记。在这种情况下,您的选择器需要是:columnObj.closest('td.ms formbody').closest('tr').hide();另外,如果您希望在所有一个函数中实现相同的效果,我会修改HideColumnOnLoad函数以接受字段类型的第二个参数。然后,该参数将用于根据字段类型应用必要的条件逻辑(如果不是其他字段,则人员/组字段也可能有类似的怪癖)。如果你需要帮助,我建议你发一个新问题;不确定我们是否在滥用这里的评论…又是泰克斯。你救了我的命:)
<script src="http://ajax.aspnetcdn.com/ajax/jquery/jquery-1.5.js"></script>
<script type="text/javascript">
function HideColumnOnLoad(hideColumn) {
$("input[Title='" + hideColumn + "']").closest("tr").hide();
}
function HideColumnOnClick(targetColumn, hideColumn) {
var columnObj = $("input[Title='" + hideColumn + "']");
$("input[Title='" + targetColumn + "']").bind('click',function() {
if($(this).is(':checked') || $(this).val() == "Pippo") {
columnObj.closest("tr").show();
}
else {
columnObj.closest("tr").hide();
}
});
}
$(document).ready(function() {
HideColumnOnLoad('descrizione');
HideColumnOnClick('sino','descrizione');
HideColumnOnClick('Scelta','descrizione');
});
</script>