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>