javascript:函数调用中的前缀

javascript:函数调用中的前缀,javascript,html,function-call,Javascript,Html,Function Call,在HTMP/ASPX等中,我看到了许多以两种方式对控件上的事件调用javascript函数的示例,例如下面的示例: JavaScript: <script type="text/javascript"> function validateOldStudent(field, rules, i, options) { if (document.getElementById('Type_IDComboBox').value == 'Old') {

在HTMP/ASPX等中,我看到了许多以两种方式对控件上的事件调用javascript函数的示例,例如下面的示例:

JavaScript:

<script type="text/javascript">
    function validateOldStudent(field, rules, i, options) {
        if (document.getElementById('Type_IDComboBox').value == 'Old') {
            if (field.val() == '') {
                alert('Fill in your lower course details.');
            }
        }
    }
</script>

函数validateLDStudent(字段、规则、i、选项){
if(document.getElementById('Type_-IDComboBox')。值='Old'){
如果(field.val()=''){
提醒('填写您的下层课程详细信息');
}
}
}
ASPX:
使用javascript:

<asp:DropDownList ID="Type_IDComboBox" runat="server" ClientIDMode="Static" onchange="javascript:checkOldStudent(this);">
<asp:DropDownList ID="Type_IDComboBox" runat="server" ClientIDMode="Static" onchange="checkOldStudent(this);">

如果没有javascript:

<asp:DropDownList ID="Type_IDComboBox" runat="server" ClientIDMode="Static" onchange="javascript:checkOldStudent(this);">
<asp:DropDownList ID="Type_IDComboBox" runat="server" ClientIDMode="Static" onchange="checkOldStudent(this);">

两者的行为/输出相同。但是我想不出来。
javascript:
前面加前缀与不加前缀有什么区别?

没有区别;
javascript:
前缀是不必要的。好吧,出于好奇,这个术语/模式是如何演变的,任何特定的浏览器依赖关系,W3C规则/标准或其他东西,哪个是有或没有的原始构造,以及它是如何变化的?只有在href中嵌入js调用时才需要“javascript:”前缀,例如。这在该上下文中是必要的,因为默认浏览器行为是将“href”属性解释为url:但在这种情况下,我们希望浏览器执行一段javascript,因此前缀是必要的。把它看作是一种指导。相比之下,onchange和其他javascript事件处理程序属性的默认浏览器行为是以javascript的形式执行内容,因此那里不需要指令;
javascript:
前缀是不必要的。好吧,出于好奇,这个术语/模式是如何演变的,任何特定的浏览器依赖关系,W3C规则/标准或其他东西,哪个是有或没有的原始构造,以及它是如何变化的?只有在href中嵌入js调用时才需要“javascript:”前缀,例如。这在该上下文中是必要的,因为默认浏览器行为是将“href”属性解释为url:但在这种情况下,我们希望浏览器执行一段javascript,因此前缀是必要的。把它看作是一种指导。相比之下,onchange和其他javascript事件处理程序属性的默认浏览器行为是以javascript的形式执行内容,因此那里不需要该指令。