Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/476.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 当多个页面使用该方法时,从特定页面自定义java脚本函数_Javascript - Fatal编程技术网

Javascript 当多个页面使用该方法时,从特定页面自定义java脚本函数

Javascript 当多个页面使用该方法时,从特定页面自定义java脚本函数,javascript,Javascript,我有一个下降像 <select> <option value="">Select</option> <option value="1">ABC</option> <option value="2">DEF</option> </select> 我在不同页面的10多个位置都有相同的选择框。这是通过ajax填充的。但是当我从特定页面调用此框时,默认情况下我需要选择ABC。但我

我有一个下降像

<select>
    <option value="">Select</option>
    <option value="1">ABC</option>
    <option value="2">DEF</option>
  </select>
我在不同页面的10多个位置都有相同的选择框。这是通过ajax填充的。但是当我从特定页面调用此框时,默认情况下我需要选择ABC。但我不希望在其余位置

我不想在我的页面中再次编写代码。是否有这种可能性


提前感谢…

这将是一个非常通用的答案,您必须根据自己的需要进行修改,但是如果所有页面上的select和所有其他标记都是相同的,这是非常不可能的,那么您必须检查URL以查看您是否在某个页面上

在页面底部之前,您可以执行以下操作:

if ( window.location.href.indexOf('/mysite.html') != -1 ) {

    document.getElementsByTagName('select')[0].value = '1';

}
如果URL包含mysite.html,这会将页面上第一次选择的默认值设置为1,并显示ABC


这里有另一个JQuery示例,考虑到您对使用ajax获得的选项加载组合所做的评论:

JQUERY:

var options = "<option value=\"\">Select</option><option value=\"1\">ABC</option><option value=\"2\">DEF</option>";

function test() {
    // Populate select with ID destiny 1 without selecting a value
    populate("#destiny1", null, options);
    // Populate select with ID destiny 2, selecting the value of the first index
    populate("#destiny2", 1, options);
}

function populate(destiny, indexOption, options) {
    $(destiny).html(options);
    if (indexOption != null) {
        $(destiny + " option")[indexOption].selected = true; 
        $(destiny).trigger("change");
    }
}
HTML:


您必须向我们展示这一选择的特殊之处,以便使其成为目标。它可能是父元素,一些文本,任何东西,甚至URL,如果选择在不同的页面上。所有页面中的选择框都是相同的。是否有可能使用一些简单的条件,如ifdocument.body.getAttribute'class'==='mypage'@sabithpocker,我认为这是不可能的
<select id="destiny1"></select>

<select id="destiny2"></select>

<input type="button" onclick="test()" value="TEST"></input>