我正在尝试删除“change_option”中的“_”。我设法添加了类,但是就是这样
<select onchange="change_option('SELECT___100E___7',this.options[this.selectedIndex].value)" name="SELECT___100E___7" class="link_fix3">
这是我到目前为止的代码......
$("form select[onchange^='change_option']")
.addClass('link_fix3')
.attr('onchange', function(k,x){
return x.replace('_','');})
答案 0 :(得分:0)
在不了解内部情况的情况下,您似乎正在尝试调用changeoption(name, value)
,您可以在jQuery中完全执行此操作,如下所示:
$("form select[onchange^='change_option']")
.addClass('link_fix3')
.change(function() {
changeoption(this.name, $(this).val());
});
虽然有更多细节,但这可能更简单,例如,最初给<select>
一个类是一个选项吗?这会让选择器更加清晰,然后你可以完全取消初始的onchange
属性......你必须承认这看起来更漂亮:)
<select name="SELECT___100E___7" class="link_fix3">
这样的剧本:
$("form select.link_fix3").change(function() {
changeoption(this.name, $(this).val());
});
如果您发布了changeoption
函数的样子,我可以改进答案以显示其他简化,如果我提供的这些选项中的任何一个都可行...我知道程序员可以控制标记因人而异,所以请告诉我们您做的选项。
答案 1 :(得分:0)
只是一个想法...如果你这样做,
$("form select[onchange^='change_option']")
.addClass('link_fix3')
.attr('onchange', function(k,x){
return x.replace('_','');})
输出将是,
onchange="changeoption('SELECT00E7',this.options[this.selectedIndex].value)" // notice your, 'SELECT___100E___7'
我建议这个,
$("form select[onchange^='change_option']")
.addClass('link_fix3')
.attr('onchange', function(k,x){
return x.replace('change_option','changeoption');})
也就是说,如果你真的想以这种方式解决它......