用于更改HTML元素的Javascript函数

时间:2012-08-06 15:43:40

标签: javascript

好的伙计们,我这样做了,我认为这涵盖了我的4个功能中的3个:

  • 删除“.mp4”扩展程序
  • 添加我自己的说明
  • 添加关键字
  • 更改类别(未完成

    function remove_mp4()
    {
       var title = document.getElementsByName("title").value;
       document.getElementsByName("title").innerHTML = title.replace(title.match(".mp4"), "");
    
    }
    function add_description()
    {
       var new_description = "Sample."
       document.getElementsByName("description").innerHTML = new_description;
    }
    function add_keywords()
    {
       var new_keywords = prompt("Unesite kljucne rijeci.", "");
       document.getElementsByName("keywords").innerHTML = new_keywords;
    }
    function change_category()
    {
       var category = document.getElementsByName("category").value;
    }
        remove_mp4();
        add_description();
        add_keywords();
        change_category();
    

我不知道的是,如何更改类别。网站代码(我想要更改的网站)在这里:

<label>
                <h4 class="category-header">Kategorija</h4>
                <span class="yt-uix-form-input-select "><span class="yt-uix-form-input-select-content"><img src="my_videos_upload_datoteke/pixel-vfl3z5WfW.gif" class="yt-uix-form-input-select-arrow"><span class="yt-uix-form-input-select-value">Odaberite kategoriju</span></span><select class="yt-uix-form-input-select-element category-input" name="category">        <option selected="selected" value="">Odaberite kategoriju</option>
    <option value="2">Automobili i vozila</option>
<option value="1">Film i animacija</option>
<option value="10">Glazba</option>
<option value="20">Igre</option>
<option value="23">Komedija</option>
<option value="15">Kućni ljubimci i životinje</option>
<option value="22">Ljudi i blogovi</option>
<option value="29">Neprofitne organizacije i aktivisti</option>
<option value="27">Obrazovanje</option>
<option value="26">Praktični savjeti i stil</option>
<option value="19">Putovanja i događaji</option>
<option value="17">Sportovi</option>
<option value="25">Vijesti i politika</option>
<option value="24">Zabava</option>
<option value="28">Znanost i tehnologija</option>

              

另外,我想将我的网站URL包含在说明(http://www.sample.com/)中,但每次尝试时,都会收到错误(因为Javascript将“//”作为一行注释),所以任何想法如何解决这两件事?

注意:如果您认为脚本的某些部分不起作用,请写下来。感谢。

1 个答案:

答案 0 :(得分:1)

首先关于.mp3扩展名:您是否测试了remove_mp3()功能?你试图在那里设置数组的innerHTML,我会告诉你我的意思:

我使用Chrome,但我确信在Firefox中你也有一个JS控制台。尝试在那里输入document.getElementsByName("title"),你会看到你得到一个数组。您可能想要更改每个title - 元素的标题,因此您必须循环遍历它们:

titleElems=document.getElementsByName("title");
for(i=0;i<titleElems.length;i++){
    titleInner=titleElems[i].innerHTML;
    titleElems[i].innerHTML=titleInner.replace(titleInner.match(".mp4"), "");
}

然后在类别部分:当具有 <option>属性时,根据定义选择下拉列表中的selection。因此,删除该属性并将其添加到要选择的所需选项:

catChildNodes=document.getElementsByName("category")[0].childNodes;
catChildNotes[1].removeAttribute("selected");
for(i=0;i<catChildNodes.length;i++){
    if(catChildNodes[i].value="15") //Please change the "15" into something you want; I don't know which one you want to choose :)
        catChildNodes[i].setAttribute("selected",""); //it doesn't matter it's empty; it just matters the attrib. exists :)
}

请注意,这不会更新浏览器窗口中的选择(至少不会在Chrome Mac中更新);但内部确实如此。

并且,关于描述中的链接:你是否在链接周围加上引号? (在JS中)它不应该将"//"视为评论...(alert("//")确实按预期工作)请显示您正在尝试的内容。


完全不同的东西,与原始问题中的注释2有关:您不需要先在另一个变量中存储要分配给变量的值,换句话说:a="hello"; b=a;等于:(除外)当然使用额外变量a {}} b="hello";因此:a="hello"; document.getElementsByName("title").value=a;(约)等于document.getElementsByName("title").value="hello";