Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/365.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
基于单选按钮状态的链接点击动态href生成:PHP与javascript的交互_Php_Javascript_Ajax_Codeigniter_Jquery - Fatal编程技术网

基于单选按钮状态的链接点击动态href生成:PHP与javascript的交互

基于单选按钮状态的链接点击动态href生成:PHP与javascript的交互,php,javascript,ajax,codeigniter,jquery,Php,Javascript,Ajax,Codeigniter,Jquery,我在codeigniter中使用MVC框架,我有一个视图,其中有这个链接(请注意,href值是通过调用PHP函数生成的,该函数反过来将'auth/mylogin'作为参数: <a href = "<?php echo $this->FrontController->myLoginURL(site_url() . 'auth/mylogin'); ?>"> CLICK ME</a> 现在我在同一个查看页面上有一个单选按钮 <input i

我在codeigniter中使用MVC框架,我有一个视图,其中有这个链接(请注意,
href
值是通过调用PHP函数生成的,该函数反过来将
'auth/mylogin'
作为参数:

<a href = "<?php echo $this->FrontController->myLoginURL(site_url() . 'auth/mylogin'); ?>"> CLICK ME</a>

现在我在同一个查看页面上有一个单选按钮

<input id="ut1" name="usertype" type="radio" value="ut1"<?php echo set_radio('usertype', 'ut1', TRUE); ?> />
<label for="ut1" onclick="">User Type 1</label>

<input id="ut2" name="usertype" type="radio" value="ut2"<?php echo set_radio('usertype', 'ut2'); ?> />  
<label for="ut2" onclick="">User Type 2</label>
/>
用户类型2
现在我想要的是:我还想传递用户类型值。我的意思是,根据用户在单击链接之前选择的单选按钮,我希望代码是:

在单击“单击我”之前选择用户类型1收音机

<a href = "<?php echo $this->FrontController->myLoginURL(site_url() . 'auth/mylogin/ut1'); ?>"> CLICK ME</a>
<a href = "<?php echo $this->FrontController->myLoginURL(site_url() . 'auth/mylogin/ut2'); ?>"> CLICK ME</a>

在单击“单击我”之前选择用户类型2收音机

<a href = "<?php echo $this->FrontController->myLoginURL(site_url() . 'auth/mylogin/ut1'); ?>"> CLICK ME</a>
<a href = "<?php echo $this->FrontController->myLoginURL(site_url() . 'auth/mylogin/ut2'); ?>"> CLICK ME</a>

由于没有提交,我假设我必须使用javascript来完成此操作。
但由于javascript是客户端和PHP服务器端,我不确定如何完成此操作


如何实现这一点?
请注意,代码已被剥离,仅显示相关部分。

您可以像这样使用jQuery

    $('#container_id input[type=radio]').each(function(){
    rad=$(this);
    rad.click(function(e){
    #get new url from PHP
$.get ("file_that_returns your_url.php?user_type="+rad.val(), function(data) {
$("#yourlinkid_here").attr("href", data);
});
    # $("#yourlinkid_here").attr("href", $("#yourlinkid_here").attr("href")+rad.val());
    });

    });
用户类型2
用户类型1
功能梅西尤风扇(类型){

url=“#container_id-是无线BTN的父节点;#此处的yourlinkid_-是您要更改的链接的id感谢您的回复。不过我有一个问题:在href属性中,我调用php函数echo$this->FrontController->myLoginURL()谁的参数必须使用javascript进行更改。我是javascript新手,不知道在您的代码段中我可以在哪里执行此操作?$this->FrontController->myLoginURL()使用哪种URL生成?它们是否包含任何类型的生成会话令牌?或者它们之间唯一不同的部分是用户类型?如果生成的URL是唯一的(您不能使用用户类型和上一个href在JavaScript中生成它)您可以尝试对一个PHP文件进行AJAX调用,该文件将返回生成的URL并将其用作href。这并不完全是我想要的,但这给了我正确的追求方向。非常感谢!