Javascript 获取文本值、正则表达式或DOM方法?
我有下面的街区Javascript 获取文本值、正则表达式或DOM方法?,javascript,regex,Javascript,Regex,我有下面的街区 <span id="title"><select id="optionType"><option>choose option</option><option> hello</option><option>how are you</option></select></span> 选择选项你好,你好吗 我想删除第一个选项,并且需要在新行中获取所有其他选项,只有
<span id="title"><select id="optionType"><option>choose option</option><option> hello</option><option>how are you</option></select></span>
选择选项你好,你好吗
我想删除第一个选项,并且需要在新行中获取所有其他选项,只有不带任何标记的选项文本。正则表达式是最好使用的方法,还是其他更好的方法来检索新行中的文本?我尝试了以下方法,但有时会失败
Description= $('title').innerHTML;
var tmp = Description;
tmp = tmp.replace("--Choose an option--</option>",""); // remove first option
tmp = tmp.replace(/<\/option><option>/g, "<\/option>\n<\/option>");
tmp = tmp.replace(/(<([^>]+)>)/g,"");
tmp = tmp.replace(/\n/g, "\n");
tmp = tmp.replace(/^[\s]*/gm, '');
return tmp;
Description=$('title').innerHTML;
var tmp=描述;
tmp=tmp.replace(“--选择一个选项--”和“”);//删除第一个选项
tmp=tmp.replace(//g,“\n”);
tmp=tmp。替换(/(]+)>)/g,“”;
tmp=tmp.替换(/\n/g,“\n”);
tmp=tmp.replace(/^[\s]*/gm',);
返回tmp;
(]*?>([^如果可能,尝试使用jQuery而不是regex
大概是
$("#optionType>option:first").remove() //to delete first option
$("#optionType>option") //list of other options
您是否考虑过直接删除该选项而不是摆弄HTML代码
特别容易,因为您已经在使用JQuery:
$("#title option[value='--Choose an option--']").remove();
另请参见:因为我们使用的是Javascript(因此可能是浏览器),使用标准DOM方法比使用正则表达式要容易得多。尝试使用更具描述性的标题并正确设置文章格式。这将提高回答率和质量。@Spudley:你们能帮我从DOM方法开始吗?它在IE中工作吗?我不明白你们想用所有其他选项做什么。你们能证明吗给我们一个期望结果的例子?请写一个更好的问题标题。
$("#title option[value='--Choose an option--']").remove();