Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/email/3.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
I';我用jQuery在下拉列表中选择了问题设置_Jquery_Forms_Selectedvalue - Fatal编程技术网

I';我用jQuery在下拉列表中选择了问题设置

I';我用jQuery在下拉列表中选择了问题设置,jquery,forms,selectedvalue,Jquery,Forms,Selectedvalue,参见示例。单击总裁标题中的[给我发电子邮件]应该会打开与从下拉列表中选择的网站管理员的联系表单,但这不会发生 我知道这应该很琐碎,但事实并非如此get在email()中的东西工作正常,但是当它进入到选择选项时,代码就失效了。所有相关代码如下 我的HTML: <form method="get"> <select name="to" id="to-field"> <option name="President" value="President"&

参见示例。单击总裁标题中的
[给我发电子邮件]
应该会打开与从下拉列表中选择的
网站管理员的联系表单,但这不会发生

我知道这应该很琐碎,但事实并非如此
get
email()
中的东西工作正常,但是当它进入到选择
选项时,代码就失效了。所有相关代码如下

我的HTML:

<form method="get">
    <select name="to" id="to-field">
      <option name="President" value="President">President</option>
      <option name="Webmaster" value="Webmaster">Webmaster</option>
    </select>
</form>
这是由以下因素引发的:

<span onclick="javascript:email('Webmaster');">[Email Me]</span>
我还尝试使用以下方法设置“选定”:

$("select#to-field[value=" + to + "]").attr("selected","selected");
即使是这一点也值得注意:

$("select#to-field[value=" + to + "]").attr("selected",true);

任何帮助都将不胜感激

您的$.get是一个异步事件!!事实上,你的

if(to !== undefined){
        $('select#to-field').val(to);
        console.log( 'item selected -> ' + $('select#to-field').val() );
    } 
将在内部电子邮件页面加载完成之前执行!将该部分放在$中。在加载电子邮件页面后进行回调

像这样把它夹在中间

$('#email-form').html(data);
//RIGHT HERE
    if(to !== undefined){
            $('select#to-field').val(to);
            console.log( 'item selected -> ' + $('select#to-field').val() );
        } 
//
$('#email-form form').submit( function(){...

当我测试你的代码时,它运行得非常好。告诉我,[给我发电子邮件]-它和表格在同一页吗?你能把所有代码都放在一个文件里吗。因此,我们不必猜测。让我快速创建一个JSFIDLE。实际上,有了所有的GET和内容,只需链接到页面就更容易了。这是一个不起作用的例子。总统标题上的[给我发电子邮件]应该会打开与所选网站管理员的联系表单,但事实并非如此。我认为这可能与AJAX负载有关,但我不确定如何测试。我以前尝试过,但在我这样做时,什么都没有发生<代码>控制台.log
不会启动,也不会进行任何选择。仅供参考,如果您希望看到代码不起作用,我已经按照您的建议获得了代码。请参阅我的重做注释,我将添加$.get。抱歉,您的成功回调是在电子邮件提交之后!不,这是在$.get之后完成的,而不是在ajax成功之后完成的。万分感谢!
if(to !== undefined){
        $('select#to-field').val(to);
        console.log( 'item selected -> ' + $('select#to-field').val() );
    } 
$('#email-form').html(data);
//RIGHT HERE
    if(to !== undefined){
            $('select#to-field').val(to);
            console.log( 'item selected -> ' + $('select#to-field').val() );
        } 
//
$('#email-form form').submit( function(){...