我的Javascript函数一直在运行/循环

My Javascript function keeps running/looping

本文关键字:运行 循环 一直 Javascript 函数 我的      更新时间:2023-09-26

我有一个脚本,正试图在SharePoint页面上运行。这是用于HTML表单Web部件的。当页面加载时,我想自动将默认值设置为"空白"。我是javascript的新手,但我需要立即完成这项工作,所以我在谷歌上寻求一些帮助。我找到了这个脚本并对它进行了修改。请帮助查找我做错了什么,页面一直刷新到超时。

<table cellpadding="0" cellspacing="0" width="100%" border="0">

<tr>
    <td align="left">
         <span class="CCSPDDLLabel">For Legacy vs Spectrum :</span>
<select name="LegacyVsNew" onchange="LegacyVsNewChangeCategory(this)">                            
<option value="New" selected="selected">New</option>
<option value="New">New</option>        
<option value="Legacy">Legacy</option>
</select>   
               </td>
               </tr>
</table>

<script type="text/javascript" language="javascript">
var fieldName = document.getElementsByTagName('select')[0];
var fieldNameValue = fieldName.options[fieldName.selectedIndex];
var fieldNameText = fieldName.options[fieldName.selectedIndex].text;

LegacyVsNewChangeCategory();
function LegacyVsNewChangeCategory()
    {

        if(fieldNameValue.value)    
            _SFSUBMIT_();

    else 
            location.href="/features/custom-filter-html-form"
    }

</script>

感谢

当页面加载时,我想自动将默认值设置为"空白"。

默认情况下,您选择了第一个选项。

<option value="New" selected="selected">New</option>

试试这个:

<option selected="selected">Select...</option>
<option value="New">New</option>        
<option value="Legacy">Legacy</option>

但即使采取上述步骤,您也将始终选择一个值,并且您无论如何都在函数中运行重定向

您正在页面加载时调用您的函数。该函数检查是否选择了某个内容,如果选择了某项内容,则运行_SFSUBMIT_();,否则运行重定向。由于您的页面以选定的内容开始,它将连续运行_SFSUBMIT_();。如果它没有选定的值,它会立即重定向您。

JSFiddle演示:https://jsfiddle.net/syg0wv82/